Function at 0x140053d60
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Encrypt data using speck
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 - 0xc18]
sub rsp, 0xcf0
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 [0x140074040]
xor rax, rsp
mov qword [rbp + 0xb40], rax
xor esi, esi
xorps xmm0, xmm0
movups xmmword [rbp + 0x680], xmm0
lea r12, [rbp + 0xc18]
movabs r15, 0xff00ff00ff00ff00
mov qword [rbp + 0x688], r15
mov qword [rbp + 0x690], r12
mov rax, qword [r12]
xor rax, r15
mov qword [rbp + 0x680], rax
mov qword [r12], rsi
call fcn.140007860
mov rdi, rax
mov qword [rbp + 0x178], rax
lea r14d, [rsi + 0xf]
mov rcx, qword [0x14033a830]
cmp byte [rcx + 5], sil
je 0x140054220
cmp byte [rcx + 0xa], sil
je 0x140054037
mov rcx, qword [0x14033a680]
movss xmm2, dword [rcx + 0xe0]
cvtps2pd xmm2, xmm2
mov byte [rbp - 0x68], 0xc3
mov byte [rbp - 0x67], 0xfe
mov byte [rbp - 0x66], 0xe4
mov byte [rbp - 0x65], 0xeb
mov byte [rbp - 0x64], 0xe8
mov byte [rbp - 0x63], 0xf4
mov byte [rbp - 0x62], 0xb2
mov byte [rbp - 0x61], 0xd1
mov byte [rbp - 0x60], 0xea
mov byte [rbp - 0x5f], 0xf0
mov byte [rbp - 0x5e], 0xf0
mov byte [rbp - 0x5d], 0x81
mov byte [rbp - 0x5c], 0xd6
mov byte [rbp - 0x5b], 0x8c
mov byte [rbp - 0x5a], 0xf3
mov byte [rbp - 0x59], 0x87
mov byte [rbp - 0x58], 0x8e
mov byte [rbp - 0x57], 0x9e
mov byte [rbp - 0x56], 0xc6
mov byte [rbp - 0x55], 0x8e
mov byte [rbp - 0x54], 0xec
mov byte [rbp - 0x53], 0xfa
mov byte [rbp - 0x52], 0xf1
mov byte [rbp - 0x51], 0xfa
mov byte [rbp - 0x50], 0xa2
mov byte [rbp - 0x4f], 0xa5
movzx eax, byte [rbp - 0x68]
mov r9d, esi
movabs r11, 0x6beb1ab5b9036795
mov r10, r11
lea rax, [rbp - 0x68]
sub r10, rax
nop word [rax + rax]
lea rdx, [rbp - 0x68]
add rdx, r9
movsx r8, byte [rdx]
mov rcx, r9
and ecx, r14d
cmp rcx, r14
cmovae rcx, r14
shl cl, 2
mov rax, r11
shr rax, cl
and al, r14b
add dl, r10b
xor al, dl
xor al, r8b
mov byte [rbp + r9 - 0x68], al
inc r9
cmp r9, 0x1a
jb 0x140053ee0
movq r8, xmm2
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0xa40]
call fcn.14004bf20
mov byte [rbp - 0x80], 0x73
mov byte [rbp - 0x7f], 0x41
mov byte [rbp - 0x7e], 0x52
mov byte [rbp - 0x7d], 0x5d
mov byte [rbp - 0x7c], 0x5d
mov byte [rbp - 0x7b], 0x44
mov byte [rbp - 0x7a], 6
mov byte [rbp - 0x79], 0x68
mov byte [rbp - 0x78], 0x5c
mov byte [rbp - 0x77], 0x47
mov byte [rbp - 0x76], 0x4a
mov byte [rbp - 0x75], 0x27
movzx eax, byte [rbp - 0x80]
mov r9, rsi
movabs rbx, 0xc14fb48761cac521
mov r10, rbx
lea rax, [rbp - 0x80]
sub r10, rax
nop word [rax + rax]
lea rdx, [rbp - 0x80]
add rdx, r9
movsx r8, byte [rdx]
mov rcx, r9
and ecx, r14d
cmp rcx, r14
cmovae rcx, r14
shl cl, 2
mov rax, rbx
shr rax, cl
and al, r14b
add dl, r10b
xor al, dl
xor al, r8b
mov byte [rbp + r9 - 0x80], al
inc r9
cmp r9, 0xc
jb 0x140053f80
movss xmm0, dword [0x14006a870]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x50]
call fcn.14000a570
mov dword [rbp + 0x458], 0x41700000
mov dword [rbp + 0x45c], 0x41200000
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
xor r8d, r8d
mov edx, r9d
lea rcx, [rbp + 0x748]
call fcn.140001a20
call fcn.140007840
mov rbx, rax
lea rcx, [rbp + 0x748]
call fcn.1400039f0
lea rdx, [rbp + 0xa40]
lea r9, [rbp + 0x458]
jmp 0x1400541e4
mov byte [rsp + 0x70], 0x73
mov byte [rsp + 0x71], 0x41
mov byte [rsp + 0x72], 0x52
mov byte [rsp + 0x73], 0x5d
mov byte [rsp + 0x74], 0x5d
mov byte [rsp + 0x75], 0x44
mov byte [rsp + 0x76], 6
mov byte [rsp + 0x77], 0x68
mov byte [rsp + 0x78], 0x5c
mov byte [rsp + 0x79], 0x47
mov byte [rsp + 0x7a], 0x4a
mov byte [rsp + 0x7b], 0x27
movzx eax, byte [rsp + 0x70]
mov r9, rsi
movabs rbx, 0xc14fb48761cac521
mov r10, rbx
lea rax, [rsp + 0x70]
sub r10, rax
lea rdx, [rsp + 0x70]
add rdx, r9
movsx r8, byte [rdx]
mov rcx, r9
and ecx, r14d
cmp rcx, r14
cmovae rcx, r14
shl cl, 2
mov rax, rbx
shr rax, cl
and al, r14b
add dl, r10b
xor al, dl
xor al, r8b
mov byte [rsp + r9 + 0x70], al
inc r9
cmp r9, 0xc
jb 0x140054090
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0xa80]
call fcn.14004bf20
mov byte [rsp + 0x60], 0x73
mov byte [rsp + 0x61], 0x41
mov byte [rsp + 0x62], 0x52
mov byte [rsp + 0x63], 0x5d
mov byte [rsp + 0x64], 0x5d
mov byte [rsp + 0x65], 0x44
mov byte [rsp + 0x66], 6
mov byte [rsp + 0x67], 0x68
mov byte [rsp + 0x68], 0x5c
mov byte [rsp + 0x69], 0x47
mov byte [rsp + 0x6a], 0x4a
mov byte [rsp + 0x6b], 0x27
movzx eax, byte [rsp + 0x60]
mov r9, rsi
mov r10, rbx
lea rax, [rsp + 0x60]
sub r10, rax
nop dword [rax + rax]
lea rdx, [rsp + 0x60]
add rdx, r9
movsx r8, byte [rdx]
mov rcx, r9
and ecx, r14d
cmp rcx, r14
cmovae rcx, r14
shl cl, 2
mov rax, rbx
shr rax, cl
and al, r14b
add dl, r10b
xor al, dl
xor al, r8b
mov byte [rsp + r9 + 0x60], al
inc r9
cmp r9, 0xc
jb 0x140054130
movss xmm0, dword [0x14006a870]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x50]
call fcn.14000a570
mov dword [rbp + 0x460], 0x41700000
mov dword [rbp + 0x464], 0x41200000
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
xor r8d, r8d
mov edx, r9d
lea rcx, [rbp + 0x758]
call fcn.140001a20
call fcn.140007840
mov rbx, rax
lea rcx, [rbp + 0x758]
call fcn.1400039f0
lea rdx, [rbp + 0xa80]
lea r9, [rbp + 0x460]
mov qword [rsp + 0x40], rsi
xorps xmm10, xmm10
movss dword [rsp + 0x38], xmm10
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdx
mov rcx, qword [0x14033a680]
mov rdx, qword [rcx + 0x3c18]
mov dword [rsp + 0x20], eax
movss xmm2, dword [0x14006a768]
mov rcx, rbx
call fcn.140028990
movss xmm6, dword [0x14006a664]
mov rax, qword [0x14033a848]
cmp byte [rax + 0xc], 0
je 0x14005435d
call fcn.140007840
mov rbx, rax
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
xor r8d, r8d
mov edx, r9d
lea rcx, [rbp + 0x2a8]
call fcn.140001a20
mov rcx, rax
call fcn.1400039f0
mov r9d, eax
mov rcx, qword [0x14033a848]
movd xmm2, dword [rcx + 0x10]
cvtdq2ps xmm2, xmm2
mov rcx, qword [0x14033a888]
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 - 0x3c], xmm0
movss dword [rbp - 0x38], xmm1
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], 0x50
lea rdx, [rbp - 0x3c]
mov rcx, rbx
call fcn.1400287f0
call fcn.140007840
mov rbx, rax
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
xor r8d, r8d
lea edx, [r8 + 0x19]
lea rcx, [rbp + 0x228]
call fcn.140001a20
mov rcx, rax
call fcn.1400039f0
mov r9d, eax
mov rcx, qword [0x14033a848]
mov edx, dword [rcx + 0x10]
inc edx
movd xmm2, edx
cvtdq2ps xmm2, xmm2
mov rcx, qword [0x14033a888]
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 + 0xa0], xmm0
movss dword [rbp + 0xa4], xmm1
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], 0x50
lea rdx, [rbp + 0xa0]
mov rcx, rbx
call fcn.1400287f0
mov rax, qword [0x14033a830]
cmp byte [rax + 4], 0
je 0x1400548d7
mov dword [rsp + 0x20], 0xff
xor edx, edx
mov r9d, 0xff
mov r8d, r9d
lea rcx, [rbp + 0x2c8]
call fcn.140001a20
mov rcx, rax
call fcn.1400039f0
mov r9d, eax
mov rcx, qword [0x14033a888]
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 + 0xa8], xmm0
movss dword [rbp + 0xac], 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 + 0xb0], xmm0
movss dword [rbp + 0xb4], xmm1
movss xmm7, dword [0x14006a690]
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xa8]
lea rdx, [rbp + 0xb0]
mov rcx, rdi
call fcn.1400280a0
mov dword [rsp + 0x20], 0xff
xor edx, edx
mov r9d, 0xff
mov r8d, r9d
lea rcx, [rbp + 0x298]
call fcn.140001a20
mov rcx, rax
call fcn.1400039f0
mov r9d, eax
mov rcx, qword [0x14033a888]
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 + 0xb8], xmm0
movss dword [rbp + 0xbc], 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 + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm1
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xb8]
lea rdx, [rbp + 0xc0]
mov rcx, rdi
call fcn.1400280a0
mov dword [rsp + 0x20], 0xff
xor edx, edx
mov r9d, 0xff
mov r8d, r9d
lea rcx, [rbp + 0x288]
call fcn.140001a20
mov rcx, rax
call fcn.1400039f0
mov r9d, eax
mov rcx, qword [0x14033a888]
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 + 0xc8], xmm0
movss dword [rbp + 0xcc], 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 + 0xd0], xmm0
movss dword [rbp + 0xd4], xmm1
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xc8]
lea rdx, [rbp + 0xd0]
mov rcx, rdi
call fcn.1400280a0
mov dword [rsp + 0x20], 0xff
xor edx, edx
mov r9d, 0xff
mov r8d, r9d
lea rcx, [rbp + 0x200]
call fcn.140001a20
mov rcx, rax
call fcn.1400039f0
mov r9d, eax
mov rcx, qword [0x14033a888]
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 + 0xd8], xmm0
movss dword [rbp + 0xdc], 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 + 0xe0], xmm0
movss dword [rbp + 0xe4], xmm1
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xd8]
lea rdx, [rbp + 0xe0]
mov rcx, rdi
call fcn.1400280a0
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
xor r8d, r8d
mov edx, r9d
lea rcx, [rbp + 0x180]
call fcn.140001a20
mov rcx, rax
call fcn.1400039f0
mov r9d, eax
mov rcx, qword [0x14033a888]
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 + 0xe8], xmm0
movss dword [rbp + 0xec], 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 + 0xf0], xmm0
movss dword [rbp + 0xf4], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0xe8]
lea rdx, [rbp + 0xf0]
mov rcx, rdi
call fcn.1400280a0
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
xor r8d, r8d
mov edx, r9d
lea rcx, [rbp + 0x6b8]
call fcn.140001a20
mov rcx, rax
call fcn.1400039f0
mov r9d, eax
mov rcx, qword [0x14033a888]
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 + 0xf8], xmm0
movss dword [rbp + 0xfc], 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 + 0x100], xmm0
movss dword [rbp + 0x104], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0xf8]
lea rdx, [rbp + 0x100]
mov rcx, rdi
call fcn.1400280a0
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
xor r8d, r8d
mov edx, r9d
lea rcx, [rbp + 0x418]
call fcn.140001a20
mov rcx, rax
call fcn.1400039f0
mov r9d, eax
mov rcx, qword [0x14033a888]
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 + 0x108], xmm0
movss dword [rbp + 0x10c], 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 - 0x30], xmm0
movss dword [rbp - 0x2c], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0x108]
lea rdx, [rbp - 0x30]
mov rcx, rdi
call fcn.1400280a0
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
xor r8d, r8d
mov edx, r9d
lea rcx, [rbp + 0x360]
call fcn.140001a20
mov rcx, rax
call fcn.1400039f0
mov r9d, eax
mov rcx, qword [0x14033a888]
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 - 0x48], xmm0
movss dword [rbp - 0x44], 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 - 0x70], xmm0
movss dword [rbp - 0x6c], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x70]
mov rcx, rdi
call fcn.1400280a0
mov rax, qword [0x14033a830]
cmp byte [rax + 7], 0
jne 0x1400548ee
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
xor edx, edx
jmp 0x1400548f9
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov edx, 5
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
mov rax, qword [0x14033a830]
mov rcx, qword [0x14033a720]
cmp byte [rax + 8], 0
je 0x14005491d
mov edx, 0x11
jmp 0x14005491f
xor edx, edx
call qword [sym.imp.USER32.dll_SetWindowDisplayAffinity]
mov rax, qword [0x14033a888]
mov rdx, qword [rax]
mov rax, qword [0x14033a850]
add rdx, qword [rax]
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x410]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054967
mov rcx, rsi
mov qword [rbp + 0x410], rcx
jmp 0x14005496e
mov rcx, qword [rbp + 0x410]
mov rax, qword [0x14033a8b8]
mov qword [rax], rcx
mov rax, qword [0x14033a850]
mov rdx, qword [rbp + 0x410]
add rdx, qword [rax + 0x18]
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x408]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400549b8
mov rcx, rsi
mov qword [rbp + 0x408], rcx
jmp 0x1400549bf
mov rcx, qword [rbp + 0x408]
mov rax, qword [0x14033a8b8]
mov qword [rax + 8], rcx
mov rax, qword [0x14033a850]
mov rdx, qword [rbp + 0x408]
add rdx, qword [rax + 0x20]
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x3f8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054a0a
mov rcx, rsi
mov qword [rbp + 0x3f8], rcx
jmp 0x140054a11
mov rcx, qword [rbp + 0x3f8]
mov rax, qword [0x14033a8b8]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x3e8]
mov rdx, qword [rbp + 0x3f8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054a51
mov rcx, rsi
mov qword [rbp + 0x3e8], rcx
jmp 0x140054a58
mov rcx, qword [rbp + 0x3e8]
mov rax, qword [0x14033a8b8]
mov qword [rax + 0x18], rcx
mov rax, qword [0x14033a850]
mov rdx, qword [rbp + 0x3e8]
add rdx, qword [rax + 0x40]
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x3d8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054aa3
mov rcx, rsi
mov qword [rbp + 0x3d8], rcx
jmp 0x140054aaa
mov rcx, qword [rbp + 0x3d8]
mov rax, qword [0x14033a8b8]
mov qword [rax + 0x20], rcx
mov rax, qword [0x14033a850]
mov rdx, qword [rbp + 0x3d8]
add rdx, qword [rax + 0x38]
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x3e0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054af5
mov rcx, rsi
mov qword [rbp + 0x3e0], rcx
jmp 0x140054afc
mov rcx, qword [rbp + 0x3e0]
mov rax, qword [0x14033a8b8]
mov qword [rax + 0x28], rcx
mov rax, qword [0x14033a850]
mov rdx, qword [rbp + 0x3e0]
add rdx, qword [rax + 0x28]
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x400]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054b47
mov rax, rsi
mov qword [rbp + 0x400], rax
jmp 0x140054b4e
mov rax, qword [rbp + 0x400]
mov rcx, qword [0x14033a8b8]
mov qword [rcx + 0x40], rax
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x48]
add rdx, qword [rcx + 0x28]
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x438]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054b96
mov rax, rsi
mov qword [rbp + 0x438], rax
jmp 0x140054b9d
mov rax, qword [rbp + 0x438]
mov rcx, qword [0x14033a8b8]
mov qword [rcx + 0x68], rax
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x30]
add rdx, qword [rcx]
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x3f0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054be4
mov rax, rsi
mov qword [rbp + 0x3f0], rax
jmp 0x140054beb
mov rax, qword [rbp + 0x3f0]
mov rcx, qword [0x14033a8b8]
mov qword [rcx + 0x38], rax
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x50]
add rdx, qword [rcx]
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x3c8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054c32
mov rax, rsi
mov qword [rbp + 0x3c8], rax
jmp 0x140054c39
mov rax, qword [rbp + 0x3c8]
mov rcx, qword [0x14033a8b8]
mov qword [rcx + 0x58], rax
mov rax, qword [0x14033a850]
mov r8, qword [rax + 0x70]
add r8, qword [rcx + 0x68]
lea rdx, [rbp + 0x360]
lea rcx, [0x14033a8c0]
call fcn.14005fbd0
mov r8, qword [0x14033a8b8]
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 [0x14033a850]
mov rdx, qword [rax + 0x88]
add rdx, qword [r8 + 0x40]
mov qword [rsp + 0x20], rsi
mov r9d, 4
lea r8, [rbp + 0x3d4]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054cc8
mov eax, esi
mov dword [rbp + 0x3d4], eax
jmp 0x140054cce
mov eax, dword [rbp + 0x3d4]
mov rcx, qword [0x14033a8b8]
mov byte [rcx + 0x94], al
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x68]
add rdx, qword [rcx + 0x58]
mov qword [rsp + 0x20], rsi
mov r9d, 8
lea r8, [rbp + 0x3c0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054d18
mov rax, rsi
mov qword [rbp + 0x3c0], rax
jmp 0x140054d1f
mov rax, qword [rbp + 0x3c0]
mov rdx, qword [0x14033a8b8]
mov qword [rdx + 0x30], rax
mov rax, qword [0x14033a850]
mov rcx, qword [rax + 0x68]
mov rdx, qword [rdx + 0x58]
add rcx, 8
add rdx, rcx
mov qword [rsp + 0x20], rsi
mov r9d, 4
lea r8, [rbp + 0x448]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054d6c
mov eax, esi
mov dword [rbp + 0x448], eax
jmp 0x140054d72
mov eax, dword [rbp + 0x448]
mov rcx, qword [0x14033a8b8]
mov dword [rcx + 0x70], eax
mov eax, dword [rbp + 0x448]
mov dword [rcx + 0x90], 0x7f7fffff
mov qword [rcx + 0x60], rsi
mov edx, esi
mov dword [rbp - 0x3c], edx
test eax, eax
je 0x140058998
movzx edi, byte [rbp + 0x3b8]
movzx r14d, byte [rbp + 0x3b8]
movzx r12d, byte [rbp + 0x3b8]
movzx r15d, byte [rbp + 0x3b8]
movzx esi, byte [rbp + 0x3b8]
movzx r13d, byte [rbp + 0x3b8]
movsd xmm11, qword [0x14006a6d8]
movsd xmm9, qword [0x14006a880]
movsd xmm12, qword [0x14006a698]
movsd xmm13, qword [0x14006a6f8]
nop
mov rax, qword [0x14033a850]
imul rdx, qword [rax + 0x80]
add rdx, qword [rcx + 0x30]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x440]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054e34
xor ebx, ebx
mov qword [rbp + 0x440], rbx
jmp 0x140054e3b
mov rbx, qword [rbp + 0x440]
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x60]
add rdx, rbx
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x4b8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054e78
xor eax, eax
mov qword [rbp + 0x4b8], rax
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x88]
add rdx, rbx
xor ebx, ebx
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 4]
lea r8, [rbp + 0x4c0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054eb1
mov dword [rbp + 0x4c0], ebx
mov rbx, qword [rbp + 0x4b8]
lea rdx, [rbx + 0xa20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x510]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054ef0
mov qword [rbp + 0x510], 0
test rbx, rbx
je 0x14005896f
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x78]
add rdx, rbx
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x450]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054f38
xor eax, eax
mov qword [rbp + 0x450], rax
jmp 0x140054f3f
mov rax, qword [rbp + 0x450]
mov rcx, qword [0x14033a8b8]
cmp rbx, qword [rcx + 0x28]
je 0x140058976
mov r9d, 0x6d
mov r8, rax
lea rdx, [rbp + 0x360]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
movsd xmm0, qword [rbp + 0x370]
addsd xmm0, qword [0x14006a6b8]
movsd qword [rbp + 0x3f0], xmm0
movsd xmm2, qword [rbp + 0x360]
movsd qword [rbp + 0x408], xmm2
movsd xmm0, qword [rbp + 0x368]
movsd qword [rbp + 0x438], xmm0
mov rax, qword [0x14033a888]
mov rdx, qword [rax]
mov rax, qword [0x14033a850]
add rdx, qword [rax]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x578]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140054fe9
xor ebx, ebx
mov qword [rbp + 0x578], rbx
jmp 0x140054ff0
mov rbx, qword [rbp + 0x578]
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x18]
add rdx, rbx
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x570]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x14005502f
xor edx, edx
mov qword [rbp + 0x570], rdx
jmp 0x140055036
mov rdx, qword [rbp + 0x570]
mov rax, qword [0x14033a850]
add rdx, qword [rax + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x568]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055072
xor edx, edx
mov qword [rbp + 0x568], rdx
jmp 0x140055079
mov rdx, qword [rbp + 0x568]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x560]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400550aa
xor edx, edx
mov qword [rbp + 0x560], rdx
jmp 0x1400550b1
mov rdx, qword [rbp + 0x560]
mov rax, qword [0x14033a850]
add rdx, qword [rax + 0x40]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x580]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400550ed
xor eax, eax
mov qword [rbp + 0x580], rax
jmp 0x1400550f4
mov rax, qword [rbp + 0x580]
mov qword [rbp + 0x3c8], rax
lea rdx, [rbx + 0x110]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x558]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055133
xor eax, eax
mov qword [rbp + 0x558], rax
jmp 0x14005513a
mov rax, qword [rbp + 0x558]
mov qword [rbp + 0x3c0], rax
lea rdx, [rbx + 0x120]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x550]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055179
xor ebx, ebx
mov qword [rbp + 0x550], rbx
jmp 0x140055180
mov rbx, qword [rbp + 0x550]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x548]
mov rdx, rbx
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400551b6
xorps xmm6, xmm6
movsd qword [rbp + 0x548], xmm6
jmp 0x1400551be
movsd xmm6, qword [rbp + 0x548]
lea rdx, [rbx + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x540]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400551f7
xorps xmm8, xmm8
movsd qword [rbp + 0x540], xmm8
jmp 0x140055200
movsd xmm8, qword [rbp + 0x540]
lea rdx, [rbx + 0x1d0]
xor ebx, ebx
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 8]
lea r8, [rbp + 0x538]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055236
xorps xmm7, xmm7
movsd qword [rbp + 0x538], xmm7
jmp 0x14005523e
movsd xmm7, qword [rbp + 0x538]
mov r8, qword [rbp + 0x3c0]
lea rdx, [rbp + 0x418]
lea rcx, [0x14033a8c0]
call fcn.14005fbd0
movsd xmm0, qword [rax]
movsd qword [rbp - 0x70], xmm0
movsd xmm0, qword [rax + 8]
movsd qword [rbp + 0x400], xmm0
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0x3c0], 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
mov rdx, qword [rbp + 0x3c8]
add rdx, 0x394
mov qword [rsp + 0x20], rbx
mov r9d, 4
lea r8, [rbp + 0x494]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400552ee
xorps xmm15, xmm15
movss dword [rbp + 0x494], xmm15
jmp 0x1400552f7
movss xmm15, dword [rbp + 0x494]
mulsd xmm7, xmm12
divsd xmm7, xmm13
mulsd xmm8, xmm12
divsd xmm8, xmm13
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 xmm9, xmm9
cvtss2sd xmm9, 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 + 0x3e8], 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 + 0x460], xmm5
movaps xmm3, xmm6
mulsd xmm3, xmm7
movaps xmm10, xmm6
xorps xmm10, xmmword [0x14006aaa0]
movsd qword [rbp + 0x458], xmm10
movaps xmm4, xmm5
mulsd xmm4, xmm7
cvtpd2ps xmm0, xmm7
cvtps2pd xmm11, xmm0
movaps xmm1, xmm12
mulsd xmm1, xmm9
cvtpd2ps xmm0, xmm1
cvtps2pd xmm8, xmm0
movaps xmm2, xmm13
mulsd xmm2, xmm9
cvtpd2ps xmm0, xmm2
cvtps2pd xmm6, xmm0
movaps xmm1, xmm9
mulsd xmm1, xmm10
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 xmm10, 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, xmm9
cvtpd2ps xmm0, xmm1
cvtps2pd xmm5, xmm0
movsd xmm1, qword [rbp + 0x3e8]
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 [0x14006aaa0]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm1
cvtps2pd xmm2, xmm0
movsd xmm9, qword [rbp + 0x3f0]
subsd xmm9, qword [rbp + 0x3c0]
movsd xmm12, qword [rbp + 0x438]
subsd xmm12, qword [rbp + 0x400]
movsd xmm13, qword [rbp + 0x408]
subsd xmm13, qword [rbp - 0x70]
movaps xmm4, xmm13
mulsd xmm4, xmm6
movaps xmm0, xmm12
mulsd xmm0, xmm8
addsd xmm4, xmm0
mulsd xmm11, xmm9
addsd xmm4, xmm11
movaps xmm8, xmm13
mulsd xmm8, xmm2
movaps xmm0, xmm12
mulsd xmm0, xmm3
addsd xmm8, xmm0
movaps xmm1, xmm9
mulsd xmm1, xmm5
addsd xmm8, xmm1
mulsd xmm13, xmm7
mulsd xmm12, xmm10
addsd xmm13, xmm12
mulsd xmm9, xmm14
addsd xmm13, xmm9
movsd xmm7, qword [0x14006a688]
maxsd xmm7, xmm4
mov rbx, qword [0x14033a888]
xorps xmm6, xmm6
cvtsi2ss xmm6, dword [rbx + 0xc]
mulss xmm6, dword [0x14006a630]
mulss xmm15, dword [0x14006a7b4]
mulss xmm15, dword [0x14006a6d0]
divss xmm15, dword [0x14006a810]
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, dword [0x14006a630]
cvtps2pd xmm1, xmm2
mulsd xmm8, xmm3
divsd xmm8, xmm7
subsd xmm1, xmm8
movsd qword [rbp + 0x438], xmm1
mulsd xmm13, xmm3
divsd xmm13, xmm7
cvtps2pd xmm0, xmm6
addsd xmm13, xmm0
movsd qword [rbp + 0x408], xmm13
movsd qword [rbp + 0x398], xmm13
movsd qword [rbp + 0x3a0], xmm1
xor r9d, r9d
mov r8, qword [rbp + 0x450]
lea rdx, [rbp + 0x6b8]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
movsd xmm2, qword [rbp + 0x6b8]
movsd qword [rbp + 0x3f8], xmm2
movsd xmm0, qword [rbp + 0x6c0]
movsd qword [rbp + 0x400], xmm0
movsd xmm0, qword [rbp + 0x6c8]
movsd qword [rbp + 0x3f0], xmm0
mov rax, qword [0x14033a888]
mov rdx, qword [rax]
mov rax, qword [0x14033a850]
add rdx, qword [rax]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x530]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055637
xor ebx, ebx
mov qword [rbp + 0x530], rbx
jmp 0x14005563e
mov rbx, qword [rbp + 0x530]
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x18]
add rdx, rbx
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x528]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x14005567d
xor edx, edx
mov qword [rbp + 0x528], rdx
jmp 0x140055684
mov rdx, qword [rbp + 0x528]
mov rax, qword [0x14033a850]
add rdx, qword [rax + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x508]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400556c0
xor edx, edx
mov qword [rbp + 0x508], rdx
jmp 0x1400556c7
mov rdx, qword [rbp + 0x508]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x4d0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400556f8
xor edx, edx
mov qword [rbp + 0x4d0], rdx
jmp 0x1400556ff
mov rdx, qword [rbp + 0x4d0]
mov rax, qword [0x14033a850]
add rdx, qword [rax + 0x40]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x608]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x14005573b
xor eax, eax
mov qword [rbp + 0x608], rax
jmp 0x140055742
mov rax, qword [rbp + 0x608]
mov qword [rbp + 0x3c8], rax
lea rdx, [rbx + 0x110]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x600]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055781
xor eax, eax
mov qword [rbp + 0x600], rax
jmp 0x140055788
mov rax, qword [rbp + 0x600]
mov qword [rbp + 0x3c0], rax
lea rdx, [rbx + 0x120]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5f8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400557c7
xor ebx, ebx
mov qword [rbp + 0x5f8], rbx
jmp 0x1400557ce
mov rbx, qword [rbp + 0x5f8]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5e8]
mov rdx, rbx
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055804
xorps xmm6, xmm6
movsd qword [rbp + 0x5e8], xmm6
jmp 0x14005580c
movsd xmm6, qword [rbp + 0x5e8]
lea rdx, [rbx + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5e0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055845
xorps xmm8, xmm8
movsd qword [rbp + 0x5e0], xmm8
jmp 0x14005584e
movsd xmm8, qword [rbp + 0x5e0]
lea rdx, [rbx + 0x1d0]
xor ebx, ebx
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 8]
lea r8, [rbp + 0x5d8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055884
xorps xmm7, xmm7
movsd qword [rbp + 0x5d8], xmm7
jmp 0x14005588c
movsd xmm7, qword [rbp + 0x5d8]
mov r8, qword [rbp + 0x3c0]
lea rdx, [rbp + 0x180]
lea rcx, [0x14033a8c0]
call fcn.14005fbd0
movsd xmm0, qword [rax]
movsd qword [rbp - 0x48], xmm0
movsd xmm0, qword [rax + 8]
movsd qword [rbp - 0x70], xmm0
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0x3c0], xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
movaps xmm7, xmm0
mulsd xmm7, qword [0x14006a6d8]
movsd xmm10, qword [0x14006a880]
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 [0x14006a6d8]
mulsd xmm9, xmm10
mulsd xmm9, xmm10
mov rdx, qword [rbp + 0x3c8]
add rdx, 0x394
mov qword [rsp + 0x20], rbx
mov r9d, 4
lea r8, [rbp + 0x490]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055949
xorps xmm15, xmm15
movss dword [rbp + 0x490], xmm15
jmp 0x140055952
movss xmm15, dword [rbp + 0x490]
mulsd xmm7, qword [0x14006a698]
divsd xmm7, qword [0x14006a6f8]
mulsd xmm9, qword [0x14006a698]
divsd xmm9, qword [0x14006a6f8]
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 xmm9, xmm9
cvtss2sd xmm9, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm10, xmm10
cvtss2sd xmm10, xmm0
movsd xmm3, qword [rbp + 0x3e8]
mulsd xmm3, xmm7
movsd xmm5, qword [rbp + 0x460]
movaps xmm4, xmm5
mulsd xmm4, xmm7
cvtpd2ps xmm0, xmm7
cvtps2pd xmm13, xmm0
movaps xmm1, xmm9
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm11, xmm0
movaps xmm2, xmm10
mulsd xmm2, xmm8
cvtpd2ps xmm0, xmm2
cvtps2pd xmm6, xmm0
movaps xmm1, xmm8
mulsd xmm1, qword [rbp + 0x458]
cvtpd2ps xmm0, xmm1
cvtps2pd xmm14, xmm0
movaps xmm2, xmm5
mulsd xmm2, xmm10
movaps xmm0, xmm9
mulsd xmm0, xmm3
addsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm12, xmm0
movaps xmm1, xmm10
mulsd xmm1, xmm3
movaps xmm0, xmm5
mulsd xmm0, xmm9
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 + 0x3e8]
movaps xmm2, xmm1
mulsd xmm2, xmm10
movaps xmm0, xmm9
mulsd xmm0, xmm4
subsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm3, xmm0
mulsd xmm1, xmm9
mulsd xmm10, xmm4
addsd xmm1, xmm10
xorps xmm1, xmmword [0x14006aaa0]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm1
cvtps2pd xmm2, xmm0
movsd xmm9, qword [rbp + 0x3f0]
subsd xmm9, qword [rbp + 0x3c0]
movsd xmm10, qword [rbp + 0x400]
subsd xmm10, qword [rbp - 0x70]
movsd xmm0, qword [rbp + 0x3f8]
subsd xmm0, qword [rbp - 0x48]
movsd qword [rbp + 0x3f8], xmm0
movaps xmm4, xmm0
mulsd xmm4, xmm6
movaps xmm0, xmm10
mulsd xmm0, xmm11
addsd xmm4, xmm0
movaps xmm1, xmm9
mulsd xmm1, xmm13
addsd xmm4, xmm1
movaps xmm8, xmm10
mulsd xmm8, xmm3
movsd xmm11, qword [rbp + 0x3f8]
movaps xmm0, xmm11
mulsd xmm0, xmm2
addsd xmm8, xmm0
movaps xmm1, xmm9
mulsd xmm1, xmm5
addsd xmm8, xmm1
mulsd xmm11, xmm7
mulsd xmm10, xmm12
addsd xmm11, xmm10
mulsd xmm9, xmm14
addsd xmm11, xmm9
movsd xmm7, qword [0x14006a688]
maxsd xmm7, xmm4
mov rbx, qword [0x14033a888]
xorps xmm6, xmm6
cvtsi2ss xmm6, dword [rbx + 0xc]
mulss xmm6, dword [0x14006a630]
mulss xmm15, dword [0x14006a7b4]
mulss xmm15, dword [0x14006a6d0]
divss xmm15, dword [0x14006a810]
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, dword [0x14006a630]
cvtps2pd xmm1, xmm2
mulsd xmm8, xmm3
divsd xmm8, xmm7
subsd xmm1, xmm8
movsd qword [rbp + 0x3f0], xmm1
mulsd xmm11, xmm3
divsd xmm11, xmm7
cvtps2pd xmm0, xmm6
addsd xmm11, xmm0
movsd qword [rbp + 0x3f8], xmm11
movsd qword [rbp + 0x3a8], xmm11
movsd qword [rbp + 0x3b0], xmm1
movsd xmm0, qword [rbp + 0x360]
movsd qword [rbp - 0x48], xmm0
movsd xmm1, qword [rbp + 0x368]
movsd qword [rbp + 0x410], xmm1
movsd xmm0, qword [rbp + 0x370]
movsd qword [rbp + 0x400], xmm0
mov rdx, qword [rbx]
mov rax, qword [0x14033a850]
add rdx, qword [rax]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5d0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055c54
xor ebx, ebx
mov qword [rbp + 0x5d0], rbx
jmp 0x140055c5b
mov rbx, qword [rbp + 0x5d0]
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x18]
add rdx, rbx
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5c8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055c9a
xor edx, edx
mov qword [rbp + 0x5c8], rdx
jmp 0x140055ca1
mov rdx, qword [rbp + 0x5c8]
mov rax, qword [0x14033a850]
add rdx, qword [rax + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5c0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055cdd
xor edx, edx
mov qword [rbp + 0x5c0], rdx
jmp 0x140055ce4
mov rdx, qword [rbp + 0x5c0]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5b8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055d15
xor edx, edx
mov qword [rbp + 0x5b8], rdx
jmp 0x140055d1c
mov rdx, qword [rbp + 0x5b8]
mov rax, qword [0x14033a850]
add rdx, qword [rax + 0x40]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5f0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055d58
xor eax, eax
mov qword [rbp + 0x5f0], rax
jmp 0x140055d5f
mov rax, qword [rbp + 0x5f0]
mov qword [rbp + 0x3c8], rax
lea rdx, [rbx + 0x110]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5b0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055d9e
xor eax, eax
mov qword [rbp + 0x5b0], rax
jmp 0x140055da5
mov rax, qword [rbp + 0x5b0]
mov qword [rbp + 0x3c0], rax
lea rdx, [rbx + 0x120]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5a8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055de4
xor ebx, ebx
mov qword [rbp + 0x5a8], rbx
jmp 0x140055deb
mov rbx, qword [rbp + 0x5a8]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x5a0]
mov rdx, rbx
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055e21
xorps xmm6, xmm6
movsd qword [rbp + 0x5a0], xmm6
jmp 0x140055e29
movsd xmm6, qword [rbp + 0x5a0]
lea rdx, [rbx + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x598]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055e62
xorps xmm8, xmm8
movsd qword [rbp + 0x598], xmm8
jmp 0x140055e6b
movsd xmm8, qword [rbp + 0x598]
lea rdx, [rbx + 0x1d0]
xor ebx, ebx
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 8]
lea r8, [rbp + 0x590]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055ea1
xorps xmm7, xmm7
movsd qword [rbp + 0x590], xmm7
jmp 0x140055ea9
movsd xmm7, qword [rbp + 0x590]
mov r8, qword [rbp + 0x3c0]
lea rdx, [rbp + 0x200]
lea rcx, [0x14033a8c0]
call fcn.14005fbd0
movsd xmm0, qword [rax]
movsd qword [rbp - 0x30], xmm0
movsd xmm0, qword [rax + 8]
movsd qword [rbp - 0x70], xmm0
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0x3c0], xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
movaps xmm7, xmm0
mulsd xmm7, qword [0x14006a6d8]
movsd xmm10, qword [0x14006a880]
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 [0x14006a6d8]
mulsd xmm9, xmm10
mulsd xmm9, xmm10
mov rdx, qword [rbp + 0x3c8]
add rdx, 0x394
mov qword [rsp + 0x20], rbx
mov r9d, 4
lea r8, [rbp + 0x48c]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140055f66
xorps xmm15, xmm15
movss dword [rbp + 0x48c], xmm15
jmp 0x140055f6f
movss xmm15, dword [rbp + 0x48c]
mulsd xmm7, qword [0x14006a698]
divsd xmm7, qword [0x14006a6f8]
mulsd xmm9, qword [0x14006a698]
divsd xmm9, qword [0x14006a6f8]
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 xmm9, xmm9
cvtss2sd xmm9, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm10, xmm10
cvtss2sd xmm10, xmm0
movsd xmm3, qword [rbp + 0x3e8]
mulsd xmm3, xmm7
movsd xmm5, qword [rbp + 0x460]
movaps xmm4, xmm5
mulsd xmm4, xmm7
cvtpd2ps xmm0, xmm7
cvtps2pd xmm13, xmm0
movaps xmm1, xmm9
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm7, xmm0
movaps xmm2, xmm10
mulsd xmm2, xmm8
cvtpd2ps xmm0, xmm2
cvtps2pd xmm6, xmm0
movaps xmm1, xmm8
mulsd xmm1, qword [rbp + 0x458]
cvtpd2ps xmm0, xmm1
cvtps2pd xmm14, xmm0
movaps xmm2, xmm5
mulsd xmm2, xmm10
movaps xmm0, xmm9
mulsd xmm0, xmm3
addsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm12, xmm0
movaps xmm1, xmm10
mulsd xmm1, xmm3
movaps xmm0, xmm5
mulsd xmm0, xmm9
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
cvtps2pd xmm11, xmm0
movaps xmm1, xmm5
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm5, xmm0
movsd xmm1, qword [rbp + 0x3e8]
movaps xmm2, xmm1
mulsd xmm2, xmm10
movaps xmm0, xmm9
mulsd xmm0, xmm4
subsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm3, xmm0
mulsd xmm1, xmm9
mulsd xmm10, xmm4
addsd xmm1, xmm10
xorps xmm1, xmmword [0x14006aaa0]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm1
cvtps2pd xmm2, xmm0
movsd xmm9, qword [rbp + 0x400]
subsd xmm9, qword [rbp + 0x3c0]
movsd xmm0, qword [rbp + 0x410]
subsd xmm0, qword [rbp - 0x70]
movsd qword [rbp + 0x410], xmm0
movsd xmm10, qword [rbp - 0x48]
subsd xmm10, qword [rbp - 0x30]
movaps xmm4, xmm0
mulsd xmm4, xmm7
movaps xmm0, xmm10
mulsd xmm0, xmm6
addsd xmm4, xmm0
movaps xmm1, xmm9
mulsd xmm1, xmm13
addsd xmm4, xmm1
movsd xmm13, qword [rbp + 0x410]
movaps xmm8, xmm13
mulsd xmm8, xmm3
movaps xmm0, xmm10
mulsd xmm0, xmm2
addsd xmm8, xmm0
movaps xmm1, xmm9
mulsd xmm1, xmm5
addsd xmm8, xmm1
mulsd xmm13, xmm12
mulsd xmm10, xmm11
addsd xmm13, xmm10
mulsd xmm9, xmm14
addsd xmm13, xmm9
movsd xmm7, qword [0x14006a688]
maxsd xmm7, xmm4
mov rbx, qword [0x14033a888]
xorps xmm6, xmm6
cvtsi2ss xmm6, dword [rbx + 0xc]
movss xmm9, dword [0x14006a630]
mulss xmm6, xmm9
mulss xmm15, dword [0x14006a7b4]
mulss xmm15, dword [0x14006a6d0]
divss xmm15, dword [0x14006a810]
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 xmm11, xmm2
movaps xmm0, xmm3
mulsd xmm0, xmm8
divsd xmm0, xmm7
subsd xmm11, xmm0
movsd qword [rbp - 0x48], xmm11
mulsd xmm13, xmm3
divsd xmm13, xmm7
cvtps2pd xmm0, xmm6
addsd xmm13, xmm0
movsd qword [rbp + 0x410], xmm13
movsd qword [rbp + 0x738], xmm13
movsd qword [rbp + 0x740], xmm11
movsd xmm15, qword [rbp + 0x438]
movaps xmm0, xmm15
movsd xmm14, qword [rbp + 0x3f0]
subsd xmm0, xmm14
andps xmm0, xmmword [0x14006aa90]
cvtpd2ps xmm8, xmm0
cvtps2pd xmm0, xmm8
mulsd xmm0, qword [0x14006a678]
cvtpd2ps xmm7, xmm0
mov rax, qword [0x14033a8b8]
movsd xmm1, qword [rbp + 0x368]
subsd xmm1, qword [rax + 0x80]
movsd xmm2, qword [rbp + 0x360]
subsd xmm2, qword [rax + 0x78]
movsd xmm0, qword [rbp + 0x370]
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 0x14005629b
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400562a3
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvtss2sd xmm0, xmm0
divsd xmm0, qword [0x14006a6e0]
cvtsd2ss xmm0, xmm0
movss dword [rbp + 0x3d8], xmm0
mov rax, qword [0x14033a898]
cmp byte [rax + 0xc], 0
je 0x140058742
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0xd0]
mov rbx, qword [rbp + 0x450]
add rdx, rbx
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rbp + 0x488]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140056317
xorps xmm6, xmm6
movss dword [rbp + 0x488], xmm6
jmp 0x14005631f
movss xmm6, dword [rbp + 0x488]
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0xd8]
add rdx, rbx
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rbp + 0x484]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140056363
xorps xmm0, xmm0
movss dword [rbp + 0x484], xmm0
jmp 0x14005636b
movss xmm0, dword [rbp + 0x484]
addss xmm0, dword [0x14006a5ec]
mov rax, qword [0x14033a860]
comiss xmm0, xmm6
jb 0x1400563df
movss xmm2, dword [rax + 8]
movss xmm1, dword [rax + 4]
movss xmm0, dword [rax]
mov rax, qword [0x14033a680]
movss dword [rbp + 0x660], xmm0
movss dword [rbp + 0x664], xmm1
movss dword [rbp + 0x668], xmm2
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp + 0x66c], xmm0
lea rcx, [rbp + 0x660]
call fcn.1400039f0
mov edx, eax
lea rcx, [rbp + 0x1e8]
call fcn.14004c860
movups xmm0, xmmword [rbp + 0x1e8]
jmp 0x14005643e
movss xmm2, dword [rax + 0x18]
movss xmm1, dword [rax + 0x14]
movss xmm0, dword [rax + 0x10]
mov rax, qword [0x14033a680]
movss dword [rbp + 0x670], xmm0
movss dword [rbp + 0x674], xmm1
movss dword [rbp + 0x678], xmm2
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp + 0x67c], xmm0
lea rcx, [rbp + 0x670]
call fcn.1400039f0
mov edx, eax
lea rcx, [rbp + 0x1d0]
call fcn.14004c860
movups xmm0, xmmword [rbp + 0x1d0]
movups xmmword [0x14033a930], xmm0
mov rax, qword [0x14033a898]
cmp byte [rax + 0xc], 0
je 0x14005873b
cmp byte [rax + 0x10], 0
je 0x140056690
mov ecx, dword [rax + 8]
test ecx, ecx
jne 0x1400565ee
call fcn.140007840
mov rbx, rax
mov rcx, qword [0x14033a898]
movss xmm6, dword [rcx]
lea rcx, [0x14033a930]
call fcn.1400039f0
cvtpd2ps xmm10, xmm15
mulss xmm7, xmm9
cvtps2pd xmm1, xmm7
movaps xmm0, xmm1
addsd xmm0, qword [rbp + 0x3f8]
cvtpd2ps xmm9, xmm0
movss dword [rbp + 0x18], xmm9
movss dword [rbp + 0x1c], xmm10
movsd xmm2, qword [rbp + 0x408]
subsd xmm2, xmm1
cvtpd2ps xmm7, xmm2
movss dword [rbp + 0x20], xmm7
movss dword [rbp + 0x24], xmm10
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x18]
lea rdx, [rbp + 0x20]
mov rcx, rbx
call fcn.1400280a0
call fcn.140007840
mov rbx, rax
mov rcx, qword [0x14033a898]
movss xmm6, dword [rcx]
lea rcx, [0x14033a930]
call fcn.1400039f0
cvtpd2ps xmm8, xmm14
movss dword [rbp + 0x30], xmm7
movss dword [rbp + 0x34], xmm8
movss dword [rbp + 0x38], xmm7
movss dword [rbp + 0x3c], xmm10
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x38]
mov rcx, rbx
call fcn.1400280a0
call fcn.140007840
mov rbx, rax
mov rcx, qword [0x14033a898]
movss xmm6, dword [rcx]
lea rcx, [0x14033a930]
call fcn.1400039f0
movss dword [rbp + 0x40], xmm9
movss dword [rbp + 0x44], xmm8
movss dword [rbp + 0x48], xmm7
movss dword [rbp + 0x4c], xmm8
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x48]
mov rcx, rbx
call fcn.1400280a0
call fcn.140007840
mov rbx, rax
mov rcx, qword [0x14033a898]
movss xmm6, dword [rcx]
lea rcx, [0x14033a930]
call fcn.1400039f0
movss dword [rbp + 0x50], xmm9
movss dword [rbp + 0x54], xmm8
movss dword [rbp + 0x58], xmm9
movss dword [rbp + 0x5c], xmm10
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x50]
lea rdx, [rbp + 0x58]
mov rcx, rbx
call fcn.1400280a0
movss xmm9, dword [0x14006a630]
mov rbx, qword [rbp + 0x450]
jmp 0x140056689
cmp ecx, 1
jne 0x140056642
lea rcx, [0x14033a930]
call fcn.1400039f0
mov rcx, qword [0x14033a898]
cvttss2si r10d, dword [rcx]
cvttss2si r9d, xmm8
cvttss2si r8d, xmm7
cvttsd2si edx, xmm15
mulss xmm7, xmm9
cvtps2pd xmm0, xmm7
movsd xmm2, qword [rbp + 0x408]
subsd xmm2, xmm0
cvttsd2si ecx, xmm2
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r10d
call fcn.140051f10
jmp 0x140056689
cmp ecx, 2
jne 0x140056690
lea rcx, [0x14033a930]
call fcn.1400039f0
mov rcx, qword [0x14033a898]
movss xmm0, dword [rcx]
mov dword [rsp + 0x28], eax
movss dword [rsp + 0x20], xmm0
movss xmm0, dword [0x14006a7b8]
movaps xmm3, xmm0
movaps xmm2, xmm0
lea rdx, [rbp + 0x360]
lea rcx, [rbp + 0x6b8]
call fcn.14004f860
mov rax, qword [0x14033a898]
cmp byte [rax + 0xf], 0
je 0x140057581
movaps xmm0, xmmword [0x14006aa50]
movups xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x50]
call fcn.1400039f0
mov dword [rbp + 0x3e0], eax
mov r9d, 0x6d
mov r8, rbx
lea rdx, [rbp + 0x8d0]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 2
mov r8, rbx
lea rdx, [rbp + 0x8e8]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0x42
mov r8, rbx
lea rdx, [rbp + 0x900]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 9
mov r8, rbx
lea rdx, [rbp + 0x918]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0x26
mov r8, rbx
lea rdx, [rbp + 0x930]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0xa
mov r8, rbx
lea rdx, [rbp + 0x948]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0x27
mov r8, rbx
lea rdx, [rbp + 0x960]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0xb
mov r8, rbx
lea rdx, [rbp + 0x978]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0x28
mov r8, rbx
lea rdx, [rbp + 0x990]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0x4e
mov r8, rbx
lea rdx, [rbp + 0x9a8]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0x47
mov r8, rbx
lea rdx, [rbp + 0x9c0]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0x4f
mov r8, rbx
lea rdx, [rbp + 0x9d8]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0x48
mov r8, rbx
lea rdx, [rbp + 0x9f0]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0x4b
mov r8, rbx
lea rdx, [rbp + 0xa08]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
mov r9d, 0x52
mov r8, rbx
lea rdx, [rbp + 0xa20]
mov rcx, qword [0x14033a8a0]
call fcn.14004c5d0
lea rax, [fcn.140001a10]
mov qword [rsp + 0x20], rax
lea r9, [0x14001c7f0]
mov edx, 0x10
mov r8d, edx
lea rcx, [rbp + 0x7d0]
call fcn.140061044
nop
lea r15, [rbp + 0x7d0]
lea rdi, [rbp + 0x8d0]
mov r14d, 0x10
mov rbx, qword [0x14033a888]
nop dword [rax]
movups xmm0, xmmword [rdi]
movups xmmword [rbp + 0x418], xmm0
movsd xmm1, qword [rdi + 0x10]
movsd qword [rbp + 0x428], xmm1
mov rdx, qword [rbx]
mov rax, qword [0x14033a850]
add rdx, qword [rax]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x588]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400568f5
xor ebx, ebx
mov qword [rbp + 0x588], rbx
jmp 0x1400568fc
mov rbx, qword [rbp + 0x588]
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0x18]
add rdx, rbx
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x650]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x14005693b
xor edx, edx
mov qword [rbp + 0x650], rdx
jmp 0x140056942
mov rdx, qword [rbp + 0x650]
mov rax, qword [0x14033a850]
add rdx, qword [rax + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x648]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x14005697e
xor edx, edx
mov qword [rbp + 0x648], rdx
jmp 0x140056985
mov rdx, qword [rbp + 0x648]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x640]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400569b6
xor edx, edx
mov qword [rbp + 0x640], rdx
jmp 0x1400569bd
mov rdx, qword [rbp + 0x640]
mov rax, qword [0x14033a850]
add rdx, qword [rax + 0x40]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x638]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400569f9
xor eax, eax
mov qword [rbp + 0x638], rax
jmp 0x140056a00
mov rax, qword [rbp + 0x638]
mov qword [rbp + 0x3c8], rax
lea rdx, [rbx + 0x110]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x630]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140056a3f
xor eax, eax
mov qword [rbp + 0x630], rax
jmp 0x140056a46
mov rax, qword [rbp + 0x630]
mov qword [rbp + 0x3c0], rax
lea rdx, [rbx + 0x120]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x628]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140056a85
xor ebx, ebx
mov qword [rbp + 0x628], rbx
jmp 0x140056a8c
mov rbx, qword [rbp + 0x628]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x620]
mov rdx, rbx
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140056ac2
xorps xmm6, xmm6
movsd qword [rbp + 0x620], xmm6
jmp 0x140056aca
movsd xmm6, qword [rbp + 0x620]
lea rdx, [rbx + 0x20]
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x618]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140056b03
xorps xmm8, xmm8
movsd qword [rbp + 0x618], xmm8
jmp 0x140056b0c
movsd xmm8, qword [rbp + 0x618]
lea rdx, [rbx + 0x1d0]
xor ebx, ebx
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 8]
lea r8, [rbp + 0x610]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140056b42
xorps xmm7, xmm7
movsd qword [rbp + 0x610], xmm7
jmp 0x140056b4a
movsd xmm7, qword [rbp + 0x610]
mov r8, qword [rbp + 0x3c0]
lea rdx, [rbp + 0x348]
lea rcx, [0x14033a8c0]
call fcn.14005fbd0
movsd xmm0, qword [rax]
movsd qword [rbp - 0x70], xmm0
movsd xmm0, qword [rax + 8]
movsd qword [rbp + 0x400], xmm0
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0x3c0], xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
movaps xmm7, xmm0
mulsd xmm7, qword [0x14006a6d8]
movsd xmm10, qword [0x14006a880]
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 [0x14006a6d8]
mulsd xmm9, xmm10
mulsd xmm9, xmm10
mov rdx, qword [rbp + 0x3c8]
add rdx, 0x394
mov qword [rsp + 0x20], rbx
mov r9d, 4
lea r8, [rbp + 0x480]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140056c08
xorps xmm0, xmm0
movss dword [rbp + 0x480], xmm0
jmp 0x140056c10
movss xmm0, dword [rbp + 0x480]
movss dword [rbp + 0x3d4], xmm0
mulsd xmm7, qword [0x14006a698]
divsd xmm7, qword [0x14006a6f8]
mulsd xmm9, qword [0x14006a698]
divsd xmm9, qword [0x14006a6f8]
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 xmm12, xmm12
cvtss2sd xmm12, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm4, xmm4
cvtss2sd xmm4, xmm0
movaps xmm3, xmm7
mulsd xmm3, qword [rbp + 0x3e8]
movsd xmm6, qword [rbp + 0x460]
movaps xmm5, xmm6
mulsd xmm5, xmm7
cvtpd2ps xmm0, xmm7
cvtps2pd xmm14, xmm0
movaps xmm1, xmm8
mulsd xmm1, xmm12
cvtpd2ps xmm0, xmm1
cvtps2pd xmm11, xmm0
movaps xmm2, xmm8
mulsd xmm2, xmm4
cvtpd2ps xmm0, xmm2
cvtps2pd xmm9, xmm0
movaps xmm1, xmm8
mulsd xmm1, qword [rbp + 0x458]
cvtpd2ps xmm0, xmm1
cvtps2pd xmm15, xmm0
movaps xmm2, xmm6
mulsd xmm2, xmm4
movaps xmm0, xmm3
mulsd xmm0, xmm12
addsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm13, xmm0
mulsd xmm3, xmm4
movaps xmm0, xmm6
mulsd xmm0, xmm12
subsd xmm3, xmm0
cvtpd2ps xmm0, xmm3
cvtps2pd xmm10, xmm0
movaps xmm1, xmm6
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
cvtps2pd xmm7, xmm0
movaps xmm2, xmm4
mulsd xmm2, qword [rbp + 0x3e8]
movaps xmm0, xmm5
mulsd xmm0, xmm12
subsd xmm2, xmm0
cvtpd2ps xmm0, xmm2
cvtps2pd xmm3, xmm0
mulsd xmm5, xmm4
mulsd xmm12, qword [rbp + 0x3e8]
addsd xmm5, xmm12
xorps xmm5, xmmword [0x14006aaa0]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm5
cvtps2pd xmm2, xmm0
movsd xmm6, qword [rbp + 0x428]
subsd xmm6, qword [rbp + 0x3c0]
movsd xmm4, qword [rbp + 0x420]
subsd xmm4, qword [rbp + 0x400]
movsd xmm12, qword [rbp + 0x418]
subsd xmm12, qword [rbp - 0x70]
movaps xmm5, xmm4
mulsd xmm5, xmm11
movaps xmm0, xmm12
mulsd xmm0, xmm9
addsd xmm5, xmm0
movaps xmm1, xmm6
mulsd xmm1, xmm14
addsd xmm5, xmm1
movaps xmm8, xmm4
mulsd xmm8, xmm3
movaps xmm0, xmm12
mulsd xmm0, xmm2
addsd xmm8, xmm0
mulsd xmm7, xmm6
addsd xmm8, xmm7
mulsd xmm12, xmm10
mulsd xmm4, xmm13
addsd xmm12, xmm4
mulsd xmm15, xmm6
addsd xmm12, xmm15
movsd xmm7, qword [0x14006a688]
maxsd xmm7, xmm5
mov rbx, qword [0x14033a888]
xorps xmm6, xmm6
cvtsi2ss xmm6, dword [rbx + 0xc]
movss xmm9, dword [0x14006a630]
mulss xmm6, xmm9
movss xmm0, dword [rbp + 0x3d4]
mulss xmm0, dword [0x14006a7b4]
mulss xmm0, dword [0x14006a6d0]
divss xmm0, dword [0x14006a810]
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 xmm8, xmm3
divsd xmm8, xmm7
subsd xmm1, xmm8
mulsd xmm12, xmm3
divsd xmm12, xmm7
cvtps2pd xmm0, xmm6
addsd xmm12, xmm0
movsd qword [r15], xmm12
movsd qword [r15 + 8], xmm1
add rdi, 0x18
add r15, 0x10
sub r14, 1
jne 0x1400568a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
addss xmm3, xmm3
movsd xmm1, qword [rbp + 0x7f8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x7f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x70], xmm0
movss dword [rbp + 0x74], xmm1
movsd xmm2, qword [rbp + 0x7d8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x7d0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x120], xmm0
movss dword [rbp + 0x124], xmm2
movss dword [rsp + 0x20], xmm3
mov ebx, dword [rbp + 0x3e0]
mov r9d, ebx
lea r8, [rbp + 0x70]
lea rdx, [rbp + 0x120]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x7f8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x7f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x10], xmm0
movss dword [rbp - 0xc], xmm1
movsd xmm2, qword [rbp + 0x7e8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x7e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x118], xmm0
movss dword [rbp + 0x11c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x118]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x7f8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x7f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x110], xmm0
movss dword [rbp + 0x114], xmm1
movsd xmm2, qword [rbp + 0x808]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x800]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x98], xmm0
movss dword [rbp + 0x9c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x98]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x7f8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x7f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x90], xmm0
movss dword [rbp + 0x94], xmm1
movsd xmm2, qword [rbp + 0x818]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x810]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x88], xmm0
movss dword [rbp + 0x8c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x90]
lea rdx, [rbp + 0x88]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x808]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x800]
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 + 0x80], xmm0
movss dword [rbp + 0x84], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x128]
lea rdx, [rbp + 0x80]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x818]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x810]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x78], xmm0
movss dword [rbp + 0x7c], xmm1
movsd xmm2, qword [rbp + 0x838]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x830]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x68], xmm0
movss dword [rbp + 0x6c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x78]
lea rdx, [rbp + 0x68]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x848]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x840]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x60], xmm0
movss dword [rbp + 0x64], xmm1
movsd xmm2, qword [rbp + 0x828]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x820]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x10], xmm0
movss dword [rbp + 0x14], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x60]
lea rdx, [rbp + 0x10]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x858]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x850]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x130], xmm0
movss dword [rbp + 0x134], xmm1
movsd xmm2, qword [rbp + 0x838]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x830]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 8], xmm0
movss dword [rbp + 0xc], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x130]
lea rdx, [rbp + 8]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x7e8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x7e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp], xmm0
movss dword [rbp + 4], xmm1
movsd xmm2, qword [rbp + 0x878]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x870]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 8], xmm0
movss dword [rbp - 4], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp]
lea rdx, [rbp - 8]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x7e8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x7e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x18], xmm0
movss dword [rbp - 0x14], xmm1
movsd xmm2, qword [rbp + 0x868]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x860]
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.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x878]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x870]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x28], xmm0
movss dword [rbp - 0x24], xmm1
movsd xmm2, qword [rbp + 0x898]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x890]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x170], xmm0
movss dword [rbp + 0x174], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp - 0x28]
lea rdx, [rbp + 0x170]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x868]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x860]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x168], xmm0
movss dword [rbp + 0x16c], xmm1
movsd xmm2, qword [rbp + 0x888]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x880]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x160], xmm0
movss dword [rbp + 0x164], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x168]
lea rdx, [rbp + 0x160]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x898]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x890]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x158], xmm0
movss dword [rbp + 0x15c], xmm1
movsd xmm2, qword [rbp + 0x8a8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x8a0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x150], xmm0
movss dword [rbp + 0x154], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x158]
lea rdx, [rbp + 0x150]
mov rcx, rax
call fcn.1400280a0
call fcn.140007840
mov rcx, qword [0x14033a898]
movss xmm3, dword [rcx + 4]
movsd xmm1, qword [rbp + 0x888]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x880]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x28], xmm0
movss dword [rbp + 0x2c], xmm1
movsd xmm2, qword [rbp + 0x8b8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x8b0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x148], xmm0
movss dword [rbp + 0x14c], xmm2
movss dword [rsp + 0x20], xmm3
mov r9d, ebx
lea r8, [rbp + 0x28]
lea rdx, [rbp + 0x148]
mov rcx, rax
call fcn.1400280a0
nop
lea r9, [fcn.140001a10]
mov edx, 0x10
mov r8d, edx
lea rcx, [rbp + 0x7d0]
call fcn.140060cf8
mov rax, qword [0x14033a898]
movsd xmm13, qword [rbp + 0x410]
movsd xmm11, qword [rbp - 0x48]
movsd xmm14, qword [rbp + 0x3f0]
movsd xmm15, qword [rbp + 0x438]
movzx edi, byte [rbp + 0x3b8]
movzx r14d, byte [rbp + 0x3b8]
movzx r15d, byte [rbp + 0x3b8]
cmp byte [rax + 0x12], 0
je 0x140057915
xorps xmm0, xmm0
movups xmmword [rbp + 0x418], xmm0
movabs rdx, 0xff00ff00ff00ff00
mov qword [rbp + 0x420], rdx
lea rcx, [rbp + 0xc18]
mov qword [rbp + 0x428], rcx
mov rax, qword [rcx]
xor rax, rdx
mov qword [rbp + 0x3f0], rax
mov qword [rbp + 0x418], rax
xor ebx, ebx
mov qword [rcx], rbx
mov rdx, qword [rbp + 0x440]
add rdx, 0x498
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 8]
lea r8, [rbp + 0x658]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140057606
mov eax, ebx
mov qword [rbp + 0x658], rbx
jmp 0x14005760d
mov rax, qword [rbp + 0x658]
mov qword [rbp + 0x3c8], rax
lea rdx, [rax + 0x98]
mov qword [rsp + 0x20], rbx
mov r9d, 8
lea r8, [rbp + 0x4c8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140057649
mov rax, rbx
mov qword [rbp + 0x4c8], rbx
jmp 0x140057650
mov rax, qword [rbp + 0x4c8]
mov qword [rbp + 0x3c0], rax
lea rdx, [rax + 0x40]
mov qword [rsp + 0x20], rbx
mov r9d, 4
lea r8, [rbp + 0x47c]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140057687
mov eax, ebx
mov dword [rbp + 0x47c], ebx
jmp 0x14005768d
mov eax, dword [rbp + 0x47c]
mov dword [rbp + 0x3d4], eax
mov ecx, eax
inc rcx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400610b4
mov rbx, rax
mov qword [rbp + 0x3e0], rax
mov rdx, qword [rbp + 0x3c0]
add rdx, 0x38
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x380]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400576f9
xor edx, edx
mov qword [rbp + 0x380], rdx
jmp 0x140057700
mov rdx, qword [rbp + 0x380]
mov r9d, dword [rbp + 0x3d4]
add r9, r9
mov qword [rsp + 0x20], 0
mov r8, rbx
lea rcx, [0x14033a8c0]
call fcn.14004be20
mov rdx, qword [rbp + 0x3c8]
add rdx, 0x73
mov qword [rsp + 0x20], 0
mov r9d, 1
lea r8, [rbp + 0x3d0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x14005775d
xor bl, bl
mov byte [rbp + 0x3d0], bl
jmp 0x140057764
movzx ebx, byte [rbp + 0x3d0]
cmp bl, 2
jne 0x140057857
mov edx, 0xff00ff00
lea rcx, [rbp + 0x268]
call fcn.14004c860
mov rcx, qword [rbp + 0x3e0]
call fcn.14004ef30
mov rdx, rax
lea rcx, [rbp + 0x768]
call fcn.140046a20
nop
lea rcx, [rbp + 0x768]
call fcn.140046b40
mov rbx, rax
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor edx, edx
mov r8d, 0xff
lea rcx, [rbp + 0x218]
call fcn.140001a20
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm1, xmm15
subsd xmm1, qword [0x14006a6c0]
cvttsd2si r8d, xmm1
movsd xmm8, qword [rbp + 0x408]
movaps xmm0, xmm8
subsd xmm0, qword [0x14006a6b0]
cvttsd2si edx, xmm0
mov qword [rsp + 0x30], rbx
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x50]
movss xmm0, dword [0x14006a770]
movd ecx, xmm0
call fcn.14004efa0
nop
lea rcx, [rbp + 0x768]
call fcn.140046990
nop
mov rax, qword [rbp + 0x3f0]
movabs rcx, 0xff00ff00ff00ff00
xor rax, rcx
lea r8, [rbp + 0xc18]
mov qword [r8], rax
mov rax, qword [0x14033a898]
jmp 0x14005791e
cmp bl, 3
jne 0x14005786d
mov edx, 0xffff0000
lea rcx, [rbp + 0x258]
jmp 0x140057779
cmp bl, 4
jne 0x140057883
mov edx, 0xff800080
lea rcx, [rbp + 0x248]
jmp 0x140057779
cmp bl, 5
jne 0x140057899
mov edx, 0xff00ffff
lea rcx, [rbp + 0x2b8]
jmp 0x140057779
cmp bl, 6
jne 0x1400578af
mov edx, 0xff00ffff
lea rcx, [rbp + 0x278]
jmp 0x140057779
test bl, bl
je 0x1400578bc
cmp bl, 1
jne 0x14005777e
mov edx, 0xffffffff
lea rcx, [rbp + 0x238]
call fcn.14004c860
test bl, bl
jne 0x14005777e
mov rcx, qword [rbp + 0x3e0]
call fcn.140061010
mov ecx, 0xa
call fcn.1400610b4
mov qword [rbp + 0x3e0], rax
movsd xmm0, qword [str.None]
movsd qword [rax], xmm0
movzx eax, word [0x14006a2b0]
mov rcx, qword [rbp + 0x3e0]
mov word [rcx + 8], ax
jmp 0x140057785
movsd xmm8, qword [rbp + 0x408]
movzx ecx, byte [rax + 0x16]
test cl, cl
je 0x140057d41
cmp byte [rax + 0x15], 0
je 0x140057d96
mov rdx, qword [rbp + 0x440]
add rdx, 0xae8
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x4d8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140057973
xor eax, eax
mov qword [rbp + 0x4d8], rax
jmp 0x14005797a
mov rax, qword [rbp + 0x4d8]
mov qword [rbp + 0x3c0], rax
test rax, rax
jne 0x14005799e
lea rdx, str.Bot_Ai
lea rcx, [rbp + 0x6f0]
call fcn.140046a20
jmp 0x140057b2d
lea rdx, [rax + 0x10]
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rbp + 0x478]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400579d2
xor ebx, ebx
mov dword [rbp + 0x478], ebx
jmp 0x1400579d8
mov ebx, dword [rbp + 0x478]
test ebx, ebx
je 0x140057986
mov rdx, qword [rbp + 0x3c0]
add rdx, 8
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x4e0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140057a18
xor eax, eax
mov qword [rbp + 0x4e0], rax
jmp 0x140057a1f
mov rax, qword [rbp + 0x4e0]
mov qword [rbp + 0x3c0], rax
test rax, rax
je 0x140057986
movsxd rcx, ebx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400610b4
mov qword [rbp + 0x3c8], rax
lea ecx, [rbx + rbx]
movsxd r9, ecx
mov qword [rsp + 0x20], 0
mov r8, rax
mov rdx, qword [rbp + 0x3c0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
xor r9d, r9d
mov r10, qword [rbp + 0x3c8]
mov rdx, r10
lea ecx, [rbx - 1]
xor r8d, r8d
movzx ecx, cl
test ebx, ebx
cmovne r8d, ecx
and r8d, 3
lea ecx, [rbx - 1]
nop dword [rax]
xor eax, eax
test ebx, ebx
cmovne eax, ecx
cmp r9d, eax
jge 0x140057ac4
add r8d, 3
inc r9d
movzx eax, r8w
and ax, 7
add word [rdx], ax
add rdx, 2
jmp 0x140057aa0
mov rdx, r10
lea rcx, [rbp + 0x498]
call fcn.14005f1f0
nop
mov rcx, qword [rbp + 0x3c8]
call fcn.140061010
lea rdx, [rbp + 0x1c8]
lea rcx, [rbp + 0x498]
call fcn.14005f140
mov rbx, qword [rax]
lea rdx, [rbp + 0x1f8]
lea rcx, [rbp + 0x498]
call fcn.14005f160
lea r9, [rbp - 0x40]
mov r8, rbx
mov rdx, qword [rax]
lea rcx, [rbp + 0x6f0]
call fcn.14005fe40
nop
lea rcx, [rbp + 0x498]
call fcn.14005f180
nop
mov rdx, qword [rbp + 0x440]
add rdx, 0x438
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x4e8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140057b6c
xor edx, edx
mov qword [rbp + 0x4e8], rdx
jmp 0x140057b73
mov rdx, qword [rbp + 0x4e8]
mov qword [rsp + 0x20], 0
mov r9d, 0x80
lea r8, [rbp + 0xac0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
lea rdx, [rbp + 0xac0]
lea rcx, [rbp + 0x418]
call fcn.14005f1f0
nop
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 0x418]
call fcn.14005f140
mov rbx, qword [rax]
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0x418]
call fcn.14005f160
lea r9, [rbp - 0x3f]
mov r8, rbx
mov rdx, qword [rax]
lea rcx, [rbp + 0x7a8]
call fcn.14005fe40
nop
lea rcx, [rbp + 0x418]
call fcn.14005f180
nop
mov ecx, 0x1e
mov rax, qword [0x14033a898]
cmp byte [rax + 0x12], 0
mov eax, 0xf
cmove ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
movaps xmm1, xmm15
subsd xmm1, xmm0
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm1
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm8
lea r8, [0x14006a2b8]
lea rdx, [rbp + 0x6f0]
lea rcx, [rbp + 0x698]
call fcn.140046bd0
nop
lea r8, [rbp + 0x7a8]
mov rdx, rax
lea rcx, [rbp + 0x710]
call fcn.14005fb60
nop
mov r8d, 1
lea rdx, [0x14006a2b4]
mov rcx, rax
call fcn.140046b50
mov rdx, rax
lea rcx, [rbp + 0x788]
call fcn.1400469f0
nop
lea rcx, [rbp + 0x710]
call fcn.140046990
nop
lea rcx, [rbp + 0x698]
call fcn.140046990
lea rax, [rbp + 0x498]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x788]
call fcn.140046b40
mov rbx, rax
movzx edx, r13b
lea rcx, [rbp + 0x498]
call fcn.14004a830
nop
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], 0
jne 0x140057cd0
mov rdx, rbx
lea rcx, [rbp + 0x498]
call fcn.14004a850
nop
movups xmm0, xmmword [0x14033a930]
movdqa xmmword [rsp + 0x50], xmm0
lea r8, [rbp + 0x498]
lea rdx, [rsp + 0x50]
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rcx, xmm0
call fcn.140053500
nop
lea rcx, [rbp + 0x788]
call fcn.140046990
nop
lea rcx, [rbp + 0x7a8]
call fcn.140046990
nop
lea rcx, [rbp + 0x6f0]
call fcn.140046990
mov rax, qword [0x14033a898]
movss xmm10, dword [0x14006a870]
cmp byte [rax + 0x15], 0
je 0x1400581d7
mov rdx, qword [rbp + 0x440]
add rdx, 0x438
xor ebx, ebx
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 8]
lea r8, [rbp + 0x500]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x14005808c
mov edx, ebx
mov qword [rbp + 0x500], rbx
jmp 0x140058093
test cl, cl
je 0x140057d41
mov rdx, qword [rbp + 0x440]
add rdx, 0xae8
xor ebx, ebx
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 8]
lea r8, [rbp + 0x4f0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140057dd5
mov eax, ebx
mov qword [rbp + 0x4f0], rbx
jmp 0x140057ddc
mov rax, qword [rbp + 0x4f0]
mov qword [rbp + 0x3c0], rax
test rax, rax
jne 0x140057e00
lea rdx, str.Bot_Ai
lea rcx, [rbp + 0x6d0]
call fcn.140046a20
jmp 0x140057f8d
lea rdx, [rax + 0x10]
mov qword [rsp + 0x20], rbx
mov r9d, 4
lea r8, [rbp + 0x468]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140057e2e
mov dword [rbp + 0x468], ebx
jmp 0x140057e34
mov ebx, dword [rbp + 0x468]
test ebx, ebx
je 0x140057de8
mov rdx, qword [rbp + 0x3c0]
add rdx, 8
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x4f8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140057e74
xor eax, eax
mov qword [rbp + 0x4f8], rax
jmp 0x140057e7b
mov rax, qword [rbp + 0x4f8]
mov qword [rbp + 0x3c0], rax
test rax, rax
je 0x140057de8
movsxd rcx, ebx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400610b4
mov qword [rbp + 0x3c8], rax
lea ecx, [rbx + rbx]
movsxd r9, ecx
mov qword [rsp + 0x20], 0
mov r8, rax
mov rdx, qword [rbp + 0x3c0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
xor r9d, r9d
mov r10, qword [rbp + 0x3c8]
mov rdx, r10
lea ecx, [rbx - 1]
xor r8d, r8d
movzx ecx, cl
test ebx, ebx
cmovne r8d, ecx
and r8d, 3
lea ecx, [rbx - 1]
nop dword [rax + rax]
xor eax, eax
test ebx, ebx
cmovne eax, ecx
cmp r9d, eax
jge 0x140057f24
add r8d, 3
inc r9d
movzx eax, r8w
and ax, 7
add word [rdx], ax
add rdx, 2
jmp 0x140057f00
mov rdx, r10
lea rcx, [rbp + 0x498]
call fcn.14005f1f0
nop
mov rcx, qword [rbp + 0x3c8]
call fcn.140061010
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0x498]
call fcn.14005f140
mov rbx, qword [rax]
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp + 0x498]
call fcn.14005f160
lea r9, [rbp - 0x3e]
mov r8, rbx
mov rdx, qword [rax]
lea rcx, [rbp + 0x6d0]
call fcn.14005fe40
nop
lea rcx, [rbp + 0x498]
call fcn.14005f180
nop
lea rcx, [rbp + 0x6d0]
call fcn.140046b40
movss xmm10, dword [0x14006a870]
movss dword [rsp + 0x20], xmm10
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x730]
call fcn.14000a570
mov ecx, 0x1e
mov rax, qword [0x14033a898]
cmp byte [rax + 0x12], 0
mov eax, 0xf
cmove ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
movaps xmm1, xmm15
subsd xmm1, xmm0
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm1
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm8
lea rax, [rbp + 0x418]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x6d0]
call fcn.140046b40
mov rbx, rax
movzx edx, sil
lea rcx, [rbp + 0x418]
call fcn.14004a830
nop
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x140058030
mov rdx, rbx
lea rcx, [rbp + 0x418]
call fcn.14004a850
nop
movups xmm0, xmmword [0x14033a930]
movdqa xmmword [rsp + 0x50], xmm0
lea r8, [rbp + 0x418]
lea rdx, [rsp + 0x50]
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rcx, xmm0
call fcn.140053500
nop
lea rcx, [rbp + 0x6d0]
call fcn.140046990
mov rax, qword [0x14033a898]
jmp 0x140057d4a
mov rdx, qword [rbp + 0x500]
mov qword [rsp + 0x20], rbx
mov r9d, 0x80
lea r8, [rbp + 0xac0]
lea rcx, [0x14033a8c0]
call fcn.14004be20
lea rdx, [rbp + 0xac0]
lea rcx, [rbp + 0x498]
call fcn.14005f1f0
nop
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp + 0x498]
call fcn.14005f140
mov rbx, qword [rax]
lea rdx, [rbp + 0x1b8]
lea rcx, [rbp + 0x498]
call fcn.14005f160
lea r9, [rbp - 0x3d]
mov r8, rbx
mov rdx, qword [rax]
lea rcx, [rbp + 0x710]
call fcn.14005fe40
nop
lea rcx, [rbp + 0x498]
call fcn.14005f180
nop
mov ecx, 0x1e
mov rax, qword [0x14033a898]
cmp byte [rax + 0x15], 0
mov eax, 0xf
cmove ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
movaps xmm1, xmm15
subsd xmm1, xmm0
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm1
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm8
lea rax, [rbp + 0x418]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x710]
call fcn.140046b40
mov rbx, rax
movzx edx, r12b
lea rcx, [rbp + 0x418]
call fcn.14004a830
nop
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x140058180
mov rdx, rbx
lea rcx, [rbp + 0x418]
call fcn.14004a850
nop
movups xmm0, xmmword [0x14033a930]
movdqa xmmword [rsp + 0x50], xmm0
lea r8, [rbp + 0x418]
lea rdx, [rsp + 0x50]
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rcx, xmm0
call fcn.140053500
nop
lea rcx, [rbp + 0x710]
call fcn.140046990
mov rax, qword [0x14033a898]
cmp byte [rax + 0x14], 0
je 0x1400583f4
cvttss2si edx, dword [rbp + 0x3d8]
lea rcx, [rbp + 0x180]
call fcn.14005f980
nop
mov r9d, 1
lea r8, [0x14006a2c4]
xor edx, edx
lea rcx, [rbp + 0x180]
call fcn.14004ac20
mov rdx, rax
lea rcx, [rbp + 0x698]
call fcn.1400469f0
nop
mov r8d, 2
lea rdx, [0x14006a2c0]
lea rcx, [rbp + 0x698]
call fcn.140046b50
mov rdx, rax
lea rcx, [rbp + 0x498]
call fcn.1400469f0
nop
lea rcx, [rbp + 0x698]
call fcn.140046990
nop
lea rcx, [rbp + 0x180]
call fcn.140046990
lea rcx, [rbp + 0x498]
call fcn.140046b40
movss dword [rsp + 0x20], xmm10
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x378]
call fcn.14000a570
lea rax, [rbp + 0x418]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x498]
call fcn.140046b40
mov rbx, rax
movzx edx, r14b
lea rcx, [rbp + 0x418]
call fcn.14004a830
nop
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rbx + r8], 0
jne 0x1400582c0
mov rdx, rbx
lea rcx, [rbp + 0x418]
call fcn.14004a850
nop
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x2d8]
call fcn.140001a20
addsd xmm14, qword [0x14006a6a0]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm14
movss xmm0, dword [rbp + 0x378]
mulss xmm0, xmm9
cvtps2pd xmm1, xmm0
movsd xmm7, qword [rbp + 0x3f8]
movaps xmm2, xmm7
subsd xmm2, xmm1
cvtpd2ps xmm3, xmm2
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
lea r8, [rbp + 0x418]
lea rdx, [rsp + 0x50]
unpcklps xmm3, xmm6
movq rcx, xmm3
call fcn.140053500
lea rax, [rbp + 0x418]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x498]
call fcn.140046b40
mov rbx, rax
movzx edx, r15b
lea rcx, [rbp + 0x418]
call fcn.14004a830
nop
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rbx + r8], 0
jne 0x140058380
mov rdx, rbx
lea rcx, [rbp + 0x418]
call fcn.14004a850
nop
movss xmm0, dword [rbp + 0x378]
mulss xmm0, xmm9
cvtps2pd xmm1, xmm0
movaps xmm2, xmm7
subsd xmm2, xmm1
xorps xmm3, xmm3
cvtsd2ss xmm3, xmm2
movups xmm0, xmmword [0x14033a930]
movdqa xmmword [rsp + 0x50], xmm0
lea r8, [rbp + 0x418]
lea rdx, [rsp + 0x50]
unpcklps xmm3, xmm6
movq rcx, xmm3
call fcn.140053500
nop
lea rcx, [rbp + 0x498]
call fcn.140046990
mov rax, qword [0x14033a898]
jmp 0x1400583fc
movsd xmm7, qword [rbp + 0x3f8]
cmp byte [rax + 0x12], 0
je 0x1400586b2
mov rdx, qword [rbp + 0x510]
add rdx, 0x498
xor ebx, ebx
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 8]
lea r8, [rbp + 0x518]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140058441
mov eax, ebx
mov qword [rbp + 0x518], rbx
jmp 0x140058448
mov rax, qword [rbp + 0x518]
mov qword [rbp + 0x3c8], rax
lea rdx, [rax + 0x98]
mov qword [rsp + 0x20], rbx
mov r9d, 8
lea r8, [rbp + 0x520]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140058484
mov rax, rbx
mov qword [rbp + 0x520], rbx
jmp 0x14005848b
mov rax, qword [rbp + 0x520]
mov qword [rbp + 0x3c0], rax
lea rdx, [rax + 0x40]
mov qword [rsp + 0x20], rbx
mov r9d, 4
lea r8, [rbp + 0x474]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400584c2
mov eax, ebx
mov dword [rbp + 0x474], ebx
jmp 0x1400584c8
mov eax, dword [rbp + 0x474]
mov dword [rbp + 0x3d4], eax
mov ecx, eax
inc rcx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400610b4
mov rbx, rax
mov qword [rbp + 0x3d8], rax
mov rdx, qword [rbp + 0x3c0]
add rdx, 0x38
mov qword [rsp + 0x20], 0
mov r9d, 8
lea r8, [rbp + 0x388]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140058534
xor edx, edx
mov qword [rbp + 0x388], rdx
jmp 0x14005853b
mov rdx, qword [rbp + 0x388]
mov r9d, dword [rbp + 0x3d4]
add r9, r9
mov qword [rsp + 0x20], 0
mov r8, rbx
lea rcx, [0x14033a8c0]
call fcn.14004be20
mov rdx, qword [rbp + 0x3c8]
add rdx, 0x73
mov qword [rsp + 0x20], 0
mov r9d, 1
lea r8, [rbp + 0x3b8]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x140058598
xor bl, bl
mov byte [rbp + 0x3b8], bl
jmp 0x14005859f
movzx ebx, byte [rbp + 0x3b8]
cmp bl, 2
jne 0x140058799
mov edx, 0xff00ff00
lea rcx, [rbp + 0x2e8]
call fcn.14004c860
mov rcx, qword [rbp + 0x3d8]
call fcn.14004ef30
mov rdx, rax
lea rcx, [rbp + 0x698]
call fcn.140046a20
nop
lea rcx, [rbp + 0x698]
call fcn.140046b40
movss dword [rsp + 0x20], xmm10
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x390]
call fcn.14000a570
lea rax, [rbp + 0x418]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x698]
call fcn.140046b40
mov rbx, rax
movzx edx, dil
lea rcx, [rbp + 0x418]
call fcn.14004a830
nop
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], 0
jne 0x140058630
mov rdx, rbx
lea rcx, [rbp + 0x418]
call fcn.14004a850
nop
movaps xmm0, xmm15
subsd xmm0, qword [0x14006a6b8]
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
movss xmm1, dword [rbp + 0x390]
mulss xmm1, xmm9
cvtps2pd xmm0, xmm1
subsd xmm7, xmm0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm7
movups xmm0, xmmword [0x14033a930]
movdqa xmmword [rsp + 0x50], xmm0
lea r8, [rbp + 0x418]
lea rdx, [rsp + 0x50]
unpcklps xmm1, xmm2
movq rcx, xmm1
call fcn.140053500
nop
lea rcx, [rbp + 0x698]
call fcn.140046990
mov rax, qword [0x14033a898]
cmp byte [rax + 0x11], 0
je 0x14005873b
lea rcx, [0x14033a930]
call fcn.1400039f0
mov r9d, eax
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm15
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm8
movss dword [rbp + 0x140], xmm0
movss dword [rbp + 0x144], xmm1
mov rax, qword [0x14033a888]
mov eax, dword [rax + 0xc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x138], xmm0
mov dword [rbp + 0x13c], 0
movss xmm0, dword [0x14006a690]
movss dword [rsp + 0x20], xmm0
lea r8, [rbp + 0x140]
lea rdx, [rbp + 0x138]
mov rcx, qword [rbp + 0x178]
call fcn.1400280a0
mov rbx, qword [0x14033a888]
mov eax, dword [rbx + 0xc]
cdq
sub eax, edx
sar eax, 1
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
subsd xmm13, xmm0
mov eax, dword [rbx + 0x10]
cdq
sub eax, edx
sar eax, 1
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
subsd xmm11, xmm0
mulsd xmm11, xmm11
mulsd xmm13, xmm13
addsd xmm11, xmm13
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm11
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x140058857
xorps xmm6, xmm6
sqrtss xmm6, xmm1
jmp 0x140058862
cmp bl, 3
jne 0x1400587af
mov edx, 0xffff0000
lea rcx, [rbp + 0x2f8]
jmp 0x1400585b4
cmp bl, 4
jne 0x1400587c5
mov edx, 0xff800080
lea rcx, [rbp + 0x308]
jmp 0x1400585b4
cmp bl, 5
jne 0x1400587db
mov edx, 0xff00ffff
lea rcx, [rbp + 0x318]
jmp 0x1400585b4
cmp bl, 6
jne 0x1400587f1
mov edx, 0xff00ffff
lea rcx, [rbp + 0x328]
jmp 0x1400585b4
test bl, bl
je 0x1400587fe
cmp bl, 1
jne 0x1400585b9
mov edx, 0xffffffff
lea rcx, [rbp + 0x338]
call fcn.14004c860
test bl, bl
jne 0x1400585b9
mov rcx, qword [rbp + 0x3d8]
call fcn.140061010
mov ecx, 0xa
call fcn.1400610b4
mov qword [rbp + 0x3d8], rax
movsd xmm0, qword [str.None]
movsd qword [rax], xmm0
movzx eax, word [0x14006a2b0]
mov rcx, qword [rbp + 0x3d8]
mov word [rcx + 8], ax
jmp 0x1400585c0
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0xd0]
mov rbx, qword [rbp + 0x450]
add rdx, rbx
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rbp + 0x470]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400588ad
xorps xmm7, xmm7
movss dword [rbp + 0x470], xmm7
jmp 0x1400588b5
movss xmm7, dword [rbp + 0x470]
mov rax, qword [0x14033a850]
mov rdx, qword [rax + 0xd8]
add rdx, rbx
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rbp + 0x46c]
lea rcx, [0x14033a8c0]
call fcn.14004be20
test al, al
jne 0x1400588f9
xorps xmm0, xmm0
movss dword [rbp + 0x46c], xmm0
jmp 0x140058901
movss xmm0, dword [rbp + 0x46c]
addss xmm0, dword [0x14006a5ec]
mov rcx, qword [0x14033a8b8]
comiss xmm0, xmm7
jb 0x140058949
mov rax, qword [0x14033a848]
movd xmm0, dword [rax + 0x10]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm6
jbe 0x140058949
movss xmm0, dword [rcx + 0x90]
comiss xmm0, xmm6
jbe 0x140058949
movss dword [rcx + 0x90], xmm6
mov rax, qword [rbp + 0x4b8]
mov qword [rcx + 0x60], rax
movsd xmm9, qword [0x14006a880]
movsd xmm11, qword [0x14006a6d8]
movsd xmm12, qword [0x14006a698]
movsd xmm13, qword [0x14006a6f8]
jmp 0x140058976
mov rcx, qword [0x14033a8b8]
mov edx, dword [rbp - 0x3c]
inc edx
mov dword [rbp - 0x3c], edx
cmp edx, dword [rcx + 0x70]
jb 0x140054df0
movabs r15, 0xff00ff00ff00ff00
lea r12, [rbp + 0xc18]
mov rax, qword [0x14033a848]
cmp byte [rax], 0
je 0x1400589cd
cmp qword [rcx + 0x60], 0
je 0x1400589cd
mov ecx, dword [0x140339888]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1400589cd
mov rcx, qword [0x14033a8b8]
mov rcx, qword [rcx + 0x60]
call fcn.14004d8c0
nop
mov rax, qword [rbp + 0x680]
xor rax, r15
mov qword [r12], rax
mov rcx, qword [rbp + 0xb40]
xor rcx, rsp
call fcn.140060a00
lea r11, [rsp + 0xcf0]
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