Function at 0x18008a4d0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1c8]
sub rsp, 0x288
vmovaps xmmword [rax - 0x58], xmm6
vmovaps xmmword [rax - 0x68], xmm7
vmovaps xmmword [rax - 0x78], xmm8
vmovaps xmmword [rax - 0x88], xmm9
vmovaps xmmword [rax - 0x98], xmm10
vmovaps xmmword [rax - 0xa8], xmm11
vmovaps xmmword [rax - 0xb8], xmm12
vmovaps xmmword [rax - 0xc8], xmm13
vmovaps xmmword [rax - 0xd8], xmm14
vmovaps xmmword [rax - 0xe8], xmm15
mov r13, rcx
mov rbx, qword [0x180233850]
xor esi, esi
mov qword [rsp + 0x30], rsi
lea rax, [0x1801f6c90]
mov qword [rsp + 0x28], rax
vmovss xmm12, dword [0x18020a658]
vmovss dword [rsp + 0x20], xmm12
vmovss xmm9, dword [0x18020a624]
vmovaps xmm3, xmm9
vmovss xmm2, dword [rbx + 0x3c18]
lea rdx, [rbp + 0x1d8]
mov rcx, qword [rbx + 0x3c10]
call fcn.180067cf0
vmovss xmm3, dword [rax]
vmovss xmm0, dword [rbx + 0x3c18]
vaddss xmm1, xmm0, dword [rbx + 0x3818]
vmulss xmm2, xmm1, dword [r13]
vmovss dword [r13 + 0x308], xmm3
vmovss dword [r13 + 0x30c], xmm2
lea rdx, [r13 + 0xd0]
lea r8d, [rsi + 7]
vmovss xmm3, dword [0x18020a228]
vxorps xmm13, xmm13, xmm13
vmovss xmm8, dword [0x18020a348]
vmovss xmm2, dword [0x18020a544]
vmovss xmm15, dword [0x18020a2f8]
nop word [rax + rax]
mov ecx, dword [rdx - 0x54]
movzx eax, cl
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm5, xmm0, xmm3
mov eax, ecx
shr eax, 8
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm3
mov eax, ecx
shr eax, 0x10
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm6, xmm0, xmm3
shr ecx, 0x18
mov eax, ecx
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm3
vmulss xmm7, xmm1, dword [rbx + 0x37c8]
vcomiss xmm13, xmm5
jbe 0x18008a654
vmovaps xmm0, xmm13
jmp 0x18008a658
vminss xmm0, xmm8, xmm5
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si ecx, xmm1
vcomiss xmm13, xmm4
jbe 0x18008a672
vmovaps xmm0, xmm13
jmp 0x18008a676
vminss xmm0, xmm8, xmm4
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 8
or ecx, eax
vcomiss xmm13, xmm6
jbe 0x18008a695
vmovaps xmm0, xmm13
jmp 0x18008a699
vminss xmm0, xmm8, xmm6
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
vcomiss xmm13, xmm7
jbe 0x18008a6b8
vmovaps xmm0, xmm13
jmp 0x18008a6bc
vminss xmm0, xmm8, xmm7
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x18
or eax, ecx
mov dword [rdx], eax
mov ecx, dword [rdx - 0x50]
movzx eax, cl
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm6, xmm0, xmm3
mov eax, ecx
shr eax, 8
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm3
mov eax, ecx
shr eax, 0x10
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm5, xmm0, xmm3
shr ecx, 0x18
mov eax, ecx
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm3
vmulss xmm7, xmm1, dword [rbx + 0x37c8]
vcomiss xmm13, xmm6
jbe 0x18008a734
vmovaps xmm0, xmm13
jmp 0x18008a738
vminss xmm0, xmm8, xmm6
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si ecx, xmm1
vcomiss xmm13, xmm4
jbe 0x18008a752
vmovaps xmm0, xmm13
jmp 0x18008a756
vminss xmm0, xmm8, xmm4
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 8
or ecx, eax
vcomiss xmm13, xmm5
jbe 0x18008a775
vmovaps xmm0, xmm13
jmp 0x18008a779
vminss xmm0, xmm8, xmm5
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
vcomiss xmm13, xmm7
jbe 0x18008a798
vmovaps xmm0, xmm13
jmp 0x18008a79c
vminss xmm0, xmm8, xmm7
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x18
or eax, ecx
mov dword [rdx + 4], eax
mov ecx, dword [rdx - 0x4c]
movzx eax, cl
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm6, xmm0, xmm3
mov eax, ecx
shr eax, 8
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm3
mov eax, ecx
shr eax, 0x10
movzx eax, al
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm5, xmm0, xmm3
shr ecx, 0x18
mov eax, ecx
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm3
vmulss xmm7, xmm1, dword [rbx + 0x37c8]
vcomiss xmm13, xmm6
jbe 0x18008a815
vmovaps xmm0, xmm13
jmp 0x18008a819
vminss xmm0, xmm8, xmm6
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si ecx, xmm1
vcomiss xmm13, xmm4
jbe 0x18008a833
vmovaps xmm0, xmm13
jmp 0x18008a837
vminss xmm0, xmm8, xmm4
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 8
or ecx, eax
vcomiss xmm13, xmm5
jbe 0x18008a856
vmovaps xmm0, xmm13
jmp 0x18008a85a
vminss xmm0, xmm8, xmm5
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
vcomiss xmm13, xmm7
jbe 0x18008a879
vmovaps xmm0, xmm13
jmp 0x18008a87d
vminss xmm0, xmm8, xmm7
vmulss xmm0, xmm0, xmm2
vaddss xmm1, xmm0, xmm15
vcvttss2si eax, xmm1
shl eax, 0x18
or eax, ecx
mov dword [rdx + 8], eax
add rdx, 0xc
sub r8, 1
jne 0x18008a5f0
mov rax, qword [rbx + 0x3ee0]
vmovss xmm0, dword [rax + 0x254]
vsubss xmm5, xmm0, dword [rax + 0x24]
vmovss xmm1, dword [rax + 0x250]
vsubss xmm0, xmm1, dword [rax + 0x20]
vmovss dword [rsp + 0x54], xmm0
mov byte [rax + 0xb8], 1
mov rax, qword [rbx + 0x3ee0]
mov r14, qword [rax + 0x298]
mov qword [rsp + 0x60], r14
vmovss xmm6, dword [r13 + 0x60]
vmovss dword [rsp + 0x68], xmm6
cmp byte [r13 + 0x5c], sil
je 0x18008a910
mov byte [r13 + 0x5c], sil
mov rax, qword [rbx + 0x3ee0]
mov dword [rax + 0x98], esi
mov dword [rax + 0xa0], esi
mov dword [rax + 0xa8], esi
mov rax, qword [rbx + 0x3ee0]
vmovss xmm14, dword [rax + 0x100]
vmovss dword [rbp - 0x64], xmm14
vmovss xmm10, dword [rax + 0x104]
vmovss dword [rbp - 0x5c], xmm10
vmovss xmm7, dword [rax + 0x84]
vmovss dword [rsp + 0x58], xmm7
vmovss xmm4, dword [rax + 0x88]
lea r15, [r13 + 0x30c]
vdivss xmm0, xmm4, dword [r15]
vxorps xmm2, xmm2, xmm2
vroundss xmm2, xmm2, xmm0, 1
vcvttss2si r12d, xmm2
mov dword [rsp + 0x5c], r12d
vaddss xmm0, xmm5, xmm4
vdivss xmm1, xmm0, dword [r15]
vxorps xmm3, xmm3, xmm3
vroundss xmm3, xmm3, xmm1, 1
vcvttss2si r8d, xmm3
add r8d, r12d
mov rcx, qword [r13 + 0x10]
sub rcx, qword [r13 + 8]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea eax, [rdx - 1]
cmp r8d, eax
cmovl eax, r8d
mov edi, esi
test eax, eax
cmovg edi, eax
mov r9d, edx
lea r8, str.__d
mov edx, 0x10
lea rcx, [rbp - 0x50]
call fcn.180085cb0
mov rbx, qword [0x180233850]
mov qword [rsp + 0x30], rsi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x28], rax
vmovss dword [rsp + 0x20], xmm12
vmovaps xmm3, xmm9
vmovss xmm2, dword [rbx + 0x3c18]
lea rdx, [rbp + 0x1d8]
mov rcx, qword [rbx + 0x3c10]
call fcn.180067cf0
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, dword [r13 + 0x64]
vaddss xmm1, xmm0, dword [rax]
vmovss dword [r13 + 0x60], xmm1
lea rdx, [r13 + 8]
mov rax, qword [rdx + 8]
cmp qword [rdx], rax
je 0x18008bd03
mov qword [rsp + 0x30], rsi
lea rax, [0x1801f6c8c]
mov qword [rsp + 0x28], rax
vmovss dword [rsp + 0x20], xmm12
vmovaps xmm3, xmm9
vmovss xmm2, dword [rbx + 0x3c18]
lea rdx, [rbp + 0xc0]
mov rcx, qword [rbx + 0x3c10]
call fcn.180067cf0
vmovss xmm11, dword [rax]
vmovss dword [rbp - 0x68], xmm11
movsxd rax, r12d
mov qword [rbp + 0x70], rax
movsxd rcx, edi
mov qword [rbp + 0xb8], rcx
movabs rdi, 0xcbf29ce484222325
mov qword [rbp + 0x78], rdi
cmp rax, rcx
jg 0x18008bb1a
vaddss xmm0, xmm14, xmm7
vmovss dword [rbp + 0x1e0], xmm0
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, r12d
vmulss xmm1, xmm0, dword [r15]
vaddss xmm9, xmm1, xmm10
vmovss dword [rbp - 0x58], xmm9
vaddss xmm10, xmm14, dword [r13 + 0x60]
vmovss dword [rsp + 0x6c], xmm10
lea r15, [rax + rax*2]
mov qword [rbp + 0x60], r15
mov rax, qword [r13 + 8]
mov qword [rbp - 0x70], rax
mov edx, r12d
mov rcx, r13
call fcn.180088490
mov dword [rbp + 0x80], r12d
mov dword [rbp + 0x84], eax
lea rdx, [rbp + 0x80]
mov rcx, r13
call fcn.18008ffe0
vaddss xmm1, xmm0, dword [r13 + 0x60]
vmovss dword [rbp + 0x1e8], xmm1
lea rax, [rsp + 0x68]
lea rcx, [rbp + 0x1e8]
vcomiss xmm6, xmm1
cmovbe rax, rcx
vmovss xmm0, dword [rax]
vmovss dword [rbp - 0x60], xmm0
vmovss dword [rsp + 0x68], xmm0
mov edx, r12d
mov rcx, r13
call fcn.180088490
mov ebx, eax
mov dword [rbp + 0x88], r12d
mov dword [rbp + 0x8c], eax
vmovaps xmm7, xmm12
vmovaps xmm6, xmm12
mov ecx, dword [r13 + 0x20]
cmp ecx, r12d
je 0x18008ab5e
setl dl
jmp 0x18008ab65
cmp dword [r13 + 0x24], ebx
setle dl
test dl, dl
je 0x18008ab91
cmp ecx, r12d
jne 0x18008ab73
cmp dword [r13 + 0x24], 0
setg al
test al, al
je 0x18008ab8c
lea rdx, [r13 + 0x20]
mov rcx, r13
call fcn.18008ffe0
vmovaps xmm7, xmm0
jmp 0x18008ab91
vmovaps xmm7, xmm13
lea r8, [r13 + 0x28]
mov eax, dword [r8]
cmp eax, r12d
jne 0x18008aba2
cmp dword [r8 + 4], 0
setg cl
test cl, cl
je 0x18008abd2
cmp eax, r12d
jne 0x18008abb2
cmp dword [r13 + 0x2c], ebx
setl al
lea rdx, [rbp + 0x88]
test al, al
cmovne rdx, r8
mov rcx, r13
call fcn.18008ffe0
vmovaps xmm6, xmm0
lea r8, [r13 + 0x28]
cmp dword [r8], r12d
jle 0x18008abe0
vaddss xmm6, xmm6, dword [r13 + 0x308]
vucomiss xmm7, xmm12
jp 0x18008abe9
je 0x18008ac44
vucomiss xmm6, xmm12
jp 0x18008abf2
je 0x18008ac44
vcomiss xmm6, xmm7
jbe 0x18008ac44
vaddss xmm2, xmm14, dword [r13 + 0x60]
vaddss xmm0, xmm2, xmm7
vmovss dword [rbp - 0x38], xmm0
vmovss dword [rbp - 0x34], xmm9
vaddss xmm1, xmm9, dword [r13 + 0x30c]
vaddss xmm0, xmm2, xmm6
vmovss dword [rbp - 0x40], xmm0
vmovss dword [rbp - 0x3c], xmm1
mov dword [rsp + 0x28], esi
vmovss dword [rsp + 0x20], xmm13
mov r9d, dword [r13 + 0x108]
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x38]
mov rcx, r14
call fcn.1800634f0
vmovss xmm7, dword [rbp + 0x1e0]
vmovss dword [rbp - 0x78], xmm7
vmovss dword [rbp - 0x74], xmm9
lea r8d, [r12 + 1]
mov esi, r8d
mov eax, r8d
shr eax, 8
movzx edx, al
movzx eax, r8b
xor rax, rdi
movabs r9, 0x100000001b3
imul rax, r9
xor rdx, rax
imul rdx, r9
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r9
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, r9
and rdx, qword [r13 + 0x2e8]
add rdx, rdx
mov rcx, qword [r13 + 0x2d0]
mov rax, qword [rcx + rdx*8 + 8]
cmp rax, qword [r13 + 0x2c0]
jne 0x18008acc8
xor r12d, r12d
mov eax, r12d
jmp 0x18008ace3
mov rcx, qword [rcx + rdx*8]
cmp esi, dword [rax + 0x10]
je 0x18008ace0
cmp rax, rcx
je 0x18008acc0
mov rax, qword [rax + 8]
cmp r8d, dword [rax + 0x10]
jne 0x18008acd1
xor r12d, r12d
vmovss xmm6, dword [rsp + 0x58]
test rax, rax
je 0x18008ad31
vaddss xmm2, xmm9, dword [r13 + 0x30c]
vaddss xmm1, xmm6, xmm6
vaddss xmm0, xmm14, dword [rsp + 0x54]
vaddss xmm1, xmm1, xmm0
vmovss dword [rbp - 0x30], xmm1
vmovss dword [rbp - 0x2c], xmm2
mov dword [rsp + 0x28], r12d
vmovss dword [rsp + 0x20], xmm13
mov r9d, dword [r13 + 0x110]
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x78]
mov rcx, r14
call fcn.1800634f0
mov rcx, qword [r13 + 0x2f8]
mov rax, qword [rcx + 8]
mov rdi, rcx
cmp byte [rax + 0x19], 0
jne 0x18008ad5c
cmp dword [rax + 0x20], esi
jge 0x18008ad50
mov rax, qword [rax + 0x10]
jmp 0x18008ad56
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x18008ad45
cmp byte [rdi + 0x19], 0
jne 0x18008afab
cmp esi, dword [rdi + 0x20]
jl 0x18008afab
cmp rdi, rcx
je 0x18008afab
vaddss xmm7, xmm9, dword [r13 + 0x30c]
vaddss xmm1, xmm14, dword [rsp + 0x54]
vaddss xmm0, xmm6, xmm6
vaddss xmm6, xmm1, xmm0
vmovss dword [rbp - 0x28], xmm6
vmovss dword [rbp - 0x24], xmm7
mov dword [rsp + 0x28], r12d
vmovss dword [rsp + 0x20], xmm13
mov r9d, dword [r13 + 0x10c]
lea r8, [rbp - 0x28]
lea rdx, [rbp - 0x78]
mov rcx, r14
call fcn.1800634f0
mov rcx, qword [0x180233850]
mov rax, qword [rcx + 0x3ee0]
vmaxss xmm3, xmm9, dword [rax + 0x23c]
vmaxss xmm4, xmm14, dword [rax + 0x238]
vminss xmm0, xmm7, dword [rax + 0x244]
vminss xmm2, xmm6, dword [rax + 0x240]
vmovss xmm1, dword [rcx + 0x3830]
vaddss xmm7, xmm1, xmm0
vmovss xmm0, dword [rcx + 0x382c]
vaddss xmm6, xmm0, xmm2
vsubss xmm5, xmm3, xmm1
vsubss xmm1, xmm4, xmm0
vmovss xmm2, dword [rcx + 0xe00]
vcomiss xmm2, xmm1
jb 0x18008afa3
vmovss xmm0, dword [rcx + 0xe04]
vcomiss xmm0, xmm5
jb 0x18008afa3
vcomiss xmm6, xmm2
jbe 0x18008afa3
vcomiss xmm7, xmm0
jbe 0x18008afa3
xor ecx, ecx
call fcn.180050f50
mov rbx, qword [0x180233850]
mov dword [rsp + 0x70], r12d
vmovups xmm0, xmmword [rbx + 0x38a8]
vmovups xmmword [rsp + 0x74], xmm0
lea rcx, [rbx + 0x4830]
lea rdx, [rsp + 0x70]
call fcn.180058710
mov dword [rbx + 0x38a8], 0x3f800000
mov dword [rbx + 0x38ac], 0x3e4ccccd
mov dword [rbx + 0x38b0], 0x3e4ccccd
mov dword [rbx + 0x38b4], 0x3f800000
mov edx, dword [rdi + 0x20]
lea rcx, str.Error_at_line__d:
call fcn.180073fb0
mov rbx, qword [0x180233850]
movsxd rax, dword [rbx + 0x4830]
cmp eax, 1
jl 0x18008aee5
lea rdx, [rax + rax*4]
mov rcx, qword [rbx + 0x4838]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [rbx + rax*8 + 0x38a8], xmm0
dec dword [rbx + 0x4830]
mov rax, qword [rbx + 0x3ee0]
cmp byte [rax + 0xbb], 0
jne 0x18008af13
mov eax, dword [rax + 0x1b4]
neg eax
sbb ecx, ecx
add ecx, 6
vmovaps xmm1, xmm8
call fcn.180076420
mov rbx, qword [0x180233850]
vmovups xmm6, xmmword [0x18020aa40]
mov dword [rsp + 0x70], r12d
vmovups xmm0, xmmword [rbx + 0x38a8]
vmovups xmmword [rsp + 0x74], xmm0
lea rcx, [rbx + 0x4830]
lea rdx, [rsp + 0x70]
call fcn.180058710
vmovups xmmword [rbx + 0x38a8], xmm6
lea rdx, [rdi + 0x28]
cmp qword [rdx + 0x18], 0xf
jbe 0x18008af55
mov rdx, qword [rdx]
lea rcx, [0x1801b53c4]
call fcn.180073fb0
mov r8, qword [0x180233850]
movsxd rax, dword [r8 + 0x4830]
cmp eax, 1
jl 0x18008af9e
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4838]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
vmovups xmmword [r8 + rax*8 + 0x38a8], xmm0
dec dword [r8 + 0x4830]
call fcn.18004c5b0
vmovss xmm7, dword [rbp + 0x1e0]
mov r9d, esi
lea r8, str._d
mov edx, 0x10
lea rcx, [rbp - 0x50]
call fcn.180085cb0
mov rbx, qword [0x180233850]
xor esi, esi
mov qword [rsp + 0x30], rsi
lea rax, [rbp - 0x50]
mov qword [rsp + 0x28], rax
vmovss dword [rsp + 0x20], xmm12
vmovss xmm3, dword [0x18020a624]
vmovss xmm2, dword [rbx + 0x3c18]
lea rdx, [rbp + 0xc8]
mov rcx, qword [rbx + 0x3c10]
call fcn.180067cf0
mov edx, dword [r13 + 0x114]
vaddss xmm0, xmm14, dword [r13 + 0x60]
vsubss xmm1, xmm0, dword [rax]
vmovss dword [rbp - 0x20], xmm1
vmovss dword [rbp - 0x1c], xmm9
test edx, 0xff000000
je 0x18008b099
lea rcx, [rbp - 0x50]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], sil
jne 0x18008b031
lea rcx, [rbp - 0x50]
add rcx, rax
lea rax, [rbp - 0x50]
cmp rax, rcx
je 0x18008b099
mov rax, qword [r14 + 0x38]
vmovups xmm0, xmmword [r14 + 0x88]
vmovups xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x48], sil
vmovss dword [rsp + 0x40], xmm13
mov qword [rsp + 0x38], rcx
lea rcx, [rbp - 0x50]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], edx
lea r9, [rbp - 0x20]
vmovss xmm2, dword [rax + 0x10]
mov rdx, r14
mov rcx, qword [rax + 8]
call fcn.180067f10
mov eax, dword [rsp + 0x5c]
cmp dword [r13 + 0x30], eax
jne 0x18008b353
call fcn.18004cfc0
movzx ebx, al
mov rcx, r13
call fcn.18008eb60
test al, al
jne 0x18008b1bb
vaddss xmm6, xmm9, dword [r13 + 0x30c]
vaddss xmm0, xmm7, dword [rsp + 0x54]
vaddss xmm7, xmm0, dword [rsp + 0x58]
vmovss dword [rbp - 0x18], xmm7
vmovss dword [rbp - 0x14], xmm6
mov r9d, ebx
xor r9, 1
mov dword [rsp + 0x28], esi
vmovss dword [rsp + 0x20], xmm13
mov r9d, dword [r13 + r9*4 + 0x118]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x78]
mov rcx, r14
call fcn.1800634f0
mov edi, dword [r13 + 0x120]
test edi, 0xff000000
je 0x18008b1bb
vaddss xmm3, xmm9, xmm15
vaddss xmm2, xmm15, dword [rbp + 0x1e0]
mov dword [rsp + 0x20], esi
mov rcx, r14
test byte [r14 + 0x30], 1
je 0x18008b15d
vsubss xmm1, xmm6, xmm15
vsubss xmm0, xmm7, xmm15
vmovss dword [rbp - 0x10], xmm0
vmovss dword [rbp - 0xc], xmm1
vmovss dword [rbp - 8], xmm2
vmovss dword [rbp - 4], xmm3
lea r8, [rbp - 0x10]
lea rdx, [rbp - 8]
jmp 0x18008b189
vsubss xmm1, xmm6, dword [0x18020a2f4]
vsubss xmm0, xmm7, dword [0x18020a2f4]
vmovss dword [rbp], xmm0
vmovss dword [rbp + 4], xmm1
vmovss dword [rbp + 8], xmm2
vmovss dword [rbp + 0xc], xmm3
lea r8, [rbp]
lea rdx, [rbp + 8]
vmovaps xmm3, xmm8
call fcn.180062cb0
vmovss dword [rsp + 0x28], xmm8
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.180060f20
mov dword [r14 + 0x78], esi
test bl, bl
je 0x18008b353
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
mov rcx, rax
movabs rax, 0x346dc5d63886594b
imul rcx
mov rbx, rdx
sar rbx, 0xb
mov rax, rbx
shr rax, 0x3f
add rbx, rax
mov rsi, rbx
sub rsi, qword [r13 + 0x340]
cmp rsi, 0x190
jbe 0x18008b351
vmovaps xmm6, xmm8
lea rdx, [r13 + 0x30]
mov rcx, r13
call fcn.180088200
movsxd rdi, eax
lea rdx, [r13 + 0x30]
mov rcx, r13
call fcn.18008ffe0
vmovaps xmm7, xmm0
cmp byte [r13 + 0x58], 0
je 0x18008b2f7
mov rax, qword [rbp - 0x70]
mov r8, qword [rax + r15*8]
mov rcx, qword [rax + r15*8 + 8]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp edi, edx
jge 0x18008b2f7
lea rcx, [rdi + rdi*2]
movzx eax, byte [r8 + rcx*4]
xor r12d, r12d
cmp al, 9
jne 0x18008b2a3
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, dword [r13 + 0x54]
vmulss xmm4, xmm0, xmm11
vaddss xmm1, xmm7, xmm8
vdivss xmm2, xmm1, xmm4
vxorps xmm3, xmm3, xmm3
vroundss xmm3, xmm3, xmm2, 1
vaddss xmm0, xmm3, xmm8
vmulss xmm1, xmm0, xmm4
vsubss xmm6, xmm1, xmm7
jmp 0x18008b2fa
mov byte [rbp + 0x1d8], al
mov byte [rbp + 0x1d9], 0
mov rax, qword [0x180233850]
mov qword [rsp + 0x30], r12
lea rcx, [rbp + 0x1d8]
mov qword [rsp + 0x28], rcx
vmovss dword [rsp + 0x20], xmm12
vmovss xmm3, dword [0x18020a624]
vmovss xmm2, dword [rax + 0x3c18]
lea rdx, [rbp + 0xd0]
mov rcx, qword [rax + 0x3c10]
call fcn.180067cf0
vmovss xmm6, dword [rax]
jmp 0x18008b2fa
xor r12d, r12d
vaddss xmm0, xmm10, xmm7
vmovss dword [rbp + 0x18], xmm0
vmovss dword [rbp + 0x1c], xmm9
vaddss xmm1, xmm9, dword [r13 + 0x30c]
vaddss xmm0, xmm0, xmm6
vmovss dword [rbp + 0x10], xmm0
vmovss dword [rbp + 0x14], xmm1
mov dword [rsp + 0x28], r12d
vmovss dword [rsp + 0x20], xmm13
mov r9d, dword [r13 + 0x104]
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x18]
mov rcx, r14
call fcn.1800634f0
cmp rsi, 0x320
jbe 0x18008b351
mov qword [r13 + 0x340], rbx
xor esi, esi
mov rax, qword [rbp - 0x70]
mov r11, qword [rax + r15*8 + 8]
mov r10, qword [rax + r15*8]
cmp r10, r11
jne 0x18008b36e
mov ebx, dword [r13 + 0xd0]
jmp 0x18008b37b
mov rdx, r10
mov rcx, r13
call fcn.1800892b0
mov ebx, eax
mov dword [rsp + 0x50], ebx
vmovaps xmm14, xmm13
mov edi, esi
mov dword [rbp + 0x1e8], esi
mov r12, rsi
sub r11, r10
movabs rax, 0x2aaaaaaaaaaaaaab
imul r11
sar rdx, 1
mov rcx, rdx
shr rcx, 0x3f
add rdx, rcx
je 0x18008ba15
lea rax, [r12 + r12*2]
lea r14, [r10 + rax*4]
mov rdx, r14
mov rcx, r13
call fcn.1800892b0
mov r15d, eax
cmp eax, ebx
jne 0x18008b3de
movzx ecx, byte [r14]
cmp cl, 9
je 0x18008b3de
cmp cl, 0x20
jne 0x18008b511
cmp qword [r13 + 0x330], 0
je 0x18008b511
vaddss xmm1, xmm9, xmm13
vaddss xmm0, xmm14, xmm10
vmovss dword [rbp + 0x20], xmm0
vmovss dword [rbp + 0x24], xmm1
lea rbx, [r13 + 0x320]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x18008b41d
mov rdx, qword [rbx]
lea rsi, [r13 + 0x320]
jmp 0x18008b420
mov rsi, rbx
mov rdi, rbx
mov r9d, dword [rsp + 0x50]
test r9d, 0xff000000
je 0x18008b4a5
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rdx + rcx], 0
jne 0x18008b440
add rcx, rdx
cmp rdx, rcx
je 0x18008b4a5
mov r8, qword [rsp + 0x60]
mov rax, qword [r8 + 0x38]
vmovups xmm0, xmmword [r8 + 0x88]
vmovups xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x48], 0
vmovss dword [rsp + 0x40], xmm13
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r9d
lea r9, [rbp + 0x20]
vmovss xmm2, dword [rax + 0x10]
mov rdx, r8
mov rcx, qword [rax + 8]
call fcn.180067f10
mov rdi, rsi
mov rax, qword [0x180233850]
mov rcx, qword [rax + 0x3c10]
cmp qword [rbx + 0x18], 0xf
jbe 0x18008b4bd
mov rbx, qword [rbx]
mov rax, qword [0x180233850]
xor esi, esi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rbx
vmovss dword [rsp + 0x20], xmm12
vmovss xmm3, dword [0x18020a624]
vmovss xmm2, dword [rax + 0x3c18]
lea rdx, [rbp + 0xb0]
call fcn.180067cf0
vaddss xmm14, xmm14, dword [rbp + 0xb0]
mov qword [rdi + 0x10], rsi
cmp qword [rdi + 0x18], 0xf
jbe 0x18008b508
mov rdi, qword [rdi]
mov byte [rdi], sil
mov edi, dword [rbp + 0x1e8]
mov ebx, r15d
mov dword [rsp + 0x50], ebx
movzx ecx, byte [r14]
cmp cl, 9
jne 0x18008b868
vmovaps xmm5, xmm14
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, dword [r13 + 0x54]
vmulss xmm4, xmm0, xmm11
vaddss xmm1, xmm14, xmm8
vdivss xmm2, xmm1, xmm4
vxorps xmm3, xmm3, xmm3
vroundss xmm3, xmm3, xmm2, 1
vaddss xmm0, xmm3, xmm8
vmulss xmm14, xmm0, xmm4
inc edi
mov dword [rbp + 0x1e8], edi
inc r12
mov r14, qword [rsp + 0x60]
cmp byte [r13 + 0x7b], 0
je 0x18008b9d6
mov rax, qword [0x180233850]
vmovss xmm2, dword [rax + 0x3c18]
vaddss xmm0, xmm10, xmm14
vsubss xmm10, xmm0, xmm8
vmulss xmm1, xmm2, xmm15
vaddss xmm0, xmm9, xmm13
vaddss xmm11, xmm1, xmm0
vmulss xmm2, xmm2, dword [0x18020a2c4]
vsubss xmm8, xmm10, xmm2
vsubss xmm9, xmm11, xmm2
vaddss xmm12, xmm2, xmm11
vaddss xmm7, xmm11, xmm15
vaddss xmm0, xmm5, dword [rsp + 0x6c]
vaddss xmm1, xmm0, dword [0x18020a348]
vaddss xmm2, xmm1, xmm15
vmovss dword [rbp + 0x28], xmm2
vmovss dword [rbp + 0x2c], xmm7
mov r8d, dword [r14 + 0x7c]
mov ecx, dword [r14 + 0x78]
cmp ecx, r8d
jne 0x18008b604
inc ecx
test r8d, r8d
je 0x18008b5ef
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x18008b5f4
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [r14 + 0x78]
call fcn.180058800
movsxd rdx, dword [r14 + 0x78]
mov rcx, qword [r14 + 0x80]
mov rax, qword [rbp + 0x28]
mov qword [rcx + rdx*8], rax
mov r8d, dword [r14 + 0x78]
inc r8d
mov dword [r14 + 0x78], r8d
vaddss xmm6, xmm10, xmm15
vmovss dword [rbp + 0x30], xmm6
vmovss dword [rbp + 0x34], xmm7
mov ecx, dword [r14 + 0x7c]
cmp r8d, ecx
jne 0x18008b664
inc r8d
test ecx, ecx
je 0x18008b64c
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x18008b651
mov eax, 8
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
lea rcx, [r14 + 0x78]
call fcn.180058800
movsxd rdx, dword [r14 + 0x78]
mov rcx, qword [r14 + 0x80]
mov rax, qword [rbp + 0x30]
mov qword [rcx + rdx*8], rax
inc dword [r14 + 0x78]
vmovss xmm0, dword [0x18020a348]
vmovss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], esi
mov r9d, 0x90909090
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.180060f20
mov dword [r14 + 0x78], esi
vmovss dword [rbp + 0x38], xmm6
vmovss dword [rbp + 0x3c], xmm7
mov r15d, 8
cmp dword [r14 + 0x7c], 0
jne 0x18008b6d6
mov edx, 1
test sil, sil
cmove edx, r15d
lea rcx, [r14 + 0x78]
call fcn.180058800
movsxd rdx, dword [r14 + 0x78]
mov rcx, qword [r14 + 0x80]
mov rax, qword [rbp + 0x38]
mov qword [rcx + rdx*8], rax
mov r8d, dword [r14 + 0x78]
inc r8d
mov dword [r14 + 0x78], r8d
vaddss xmm0, xmm9, xmm15
vaddss xmm6, xmm8, xmm15
vmovss dword [rbp + 0x40], xmm6
vmovss dword [rbp + 0x44], xmm0
mov ecx, dword [r14 + 0x7c]
cmp r8d, ecx
jne 0x18008b739
inc r8d
test ecx, ecx
je 0x18008b723
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x18008b726
mov eax, r15d
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
lea rcx, [r14 + 0x78]
call fcn.180058800
movsxd rdx, dword [r14 + 0x78]
mov rcx, qword [r14 + 0x80]
mov rax, qword [rbp + 0x40]
mov qword [rcx + rdx*8], rax
inc dword [r14 + 0x78]
vmovss xmm8, dword [0x18020a348]
vmovss dword [rsp + 0x28], xmm8
mov dword [rsp + 0x20], esi
mov r9d, 0x90909090
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.180060f20
mov dword [r14 + 0x78], esi
vaddss xmm1, xmm11, xmm15
vaddss xmm0, xmm10, xmm15
vmovss dword [rbp + 0x48], xmm0
vmovss dword [rbp + 0x4c], xmm1
cmp dword [r14 + 0x7c], 0
jne 0x18008b7af
mov edx, 1
test sil, sil
cmove edx, r15d
lea rcx, [r14 + 0x78]
call fcn.180058800
movsxd rdx, dword [r14 + 0x78]
mov rcx, qword [r14 + 0x80]
mov rax, qword [rbp + 0x48]
mov qword [rcx + rdx*8], rax
mov r8d, dword [r14 + 0x78]
inc r8d
mov dword [r14 + 0x78], r8d
vaddss xmm0, xmm12, xmm15
vmovss dword [rbp + 0x50], xmm6
vmovss dword [rbp + 0x54], xmm0
mov ecx, dword [r14 + 0x7c]
cmp r8d, ecx
jne 0x18008b80d
inc r8d
test ecx, ecx
je 0x18008b7f7
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x18008b7fa
mov eax, r15d
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
lea rcx, [r14 + 0x78]
call fcn.180058800
movsxd rdx, dword [r14 + 0x78]
mov rcx, qword [r14 + 0x80]
mov rax, qword [rbp + 0x50]
mov qword [rcx + rdx*8], rax
inc dword [r14 + 0x78]
vmovss dword [rsp + 0x28], xmm8
mov dword [rsp + 0x20], esi
mov r9d, 0x90909090
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.180060f20
mov dword [r14 + 0x78], esi
vmovss xmm9, dword [rbp - 0x58]
vmovss xmm10, dword [rsp + 0x6c]
vmovss xmm11, dword [rbp - 0x68]
vmovss xmm12, dword [0x18020a658]
jmp 0x18008b9d6
cmp cl, 0x20
jne 0x18008b90e
mov r14, qword [rsp + 0x60]
cmp byte [r13 + 0x7b], 0
je 0x18008b8f9
mov rax, qword [0x180233850]
vaddss xmm1, xmm14, xmm10
vmulss xmm0, xmm11, xmm15
vaddss xmm3, xmm1, xmm0
vmulss xmm2, xmm15, dword [rax + 0x3c18]
vaddss xmm0, xmm9, xmm13
vaddss xmm1, xmm2, xmm0
vmovss dword [rbp + 0x58], xmm3
vmovss dword [rbp + 0x5c], xmm1
mov dword [rsp + 0x28], 3
vmovss xmm0, dword [0x18020a400]
vmovss dword [rsp + 0x20], xmm0
vmovaps xmm3, xmm13
vmovss xmm2, dword [0x18020a36c]
lea rdx, [rbp + 0x58]
mov rcx, r14
call fcn.180062870
mov r9d, 0x80808080
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.180061dc0
mov dword [r14 + 0x78], esi
vaddss xmm14, xmm14, xmm11
inc edi
mov dword [rbp + 0x1e8], edi
inc r12
jmp 0x18008b9d6
movzx eax, cl
and al, 0xfe
cmp al, 0xfc
jne 0x18008b91e
mov edi, 6
jmp 0x18008b95c
movzx eax, cl
and al, 0xfc
cmp al, 0xf8
jne 0x18008b92e
mov edi, 5
jmp 0x18008b95c
movzx eax, cl
and al, 0xf8
cmp al, 0xf0
jne 0x18008b93e
mov edi, 4
jmp 0x18008b95c
movzx eax, cl
and al, 0xf0
cmp al, 0xe0
jne 0x18008b94e
mov edi, 3
jmp 0x18008b95c
and cl, 0xe0
mov edi, esi
cmp cl, 0xc0
sete dil
inc edi
lea rbx, [r13 + 0x320]
lea rsi, [r12 + r12*2]
shl rsi, 2
add dword [rbp + 0x1e8], edi
mov eax, edi
add r12, rax
mov r14, qword [rbp + 0x60]
mov r15, qword [rbp - 0x70]
nop
dec edi
mov rax, qword [r15 + r14*8]
movzx r9d, byte [rsi + rax]
lea rsi, [rsi + 0xc]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x18008b9bb
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0xf
jbe 0x18008b9b0
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x18008b9c3
mov rcx, rbx
call fcn.180093ab0
test edi, edi
jg 0x18008b980
mov r14, qword [rsp + 0x60]
mov edi, dword [rbp + 0x1e8]
mov ebx, dword [rsp + 0x50]
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp - 0x70]
mov r10, qword [rcx + rax*8]
mov rcx, qword [rcx + rax*8 + 8]
sub rcx, r10
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, edi
cmp rax, rdx
mov esi, 0
jb 0x18008b3b2
cmp qword [r13 + 0x330], 0
je 0x18008bace
vaddss xmm1, xmm9, xmm13
vaddss xmm0, xmm14, xmm10
vmovss dword [rbp + 0x68], xmm0
vmovss dword [rbp + 0x6c], xmm1
lea rbx, [r13 + 0x320]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x18008ba4b
mov rdx, qword [rbx]
mov r9d, dword [rsp + 0x50]
test r9d, 0xff000000
je 0x18008babd
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rdx + rcx], 0
jne 0x18008ba60
add rcx, rdx
cmp rdx, rcx
je 0x18008babd
mov rax, qword [r14 + 0x38]
vmovups xmm0, xmmword [r14 + 0x88]
vmovups xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x48], 0
vmovss dword [rsp + 0x40], xmm13
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r9d
lea r9, [rbp + 0x68]
vmovss xmm2, dword [rax + 0x10]
mov rdx, r14
mov rcx, qword [rax + 8]
call fcn.180067f10
mov qword [rbx + 0x10], rsi
cmp qword [rbx + 0x18], 0xf
jbe 0x18008bacb
mov rbx, qword [rbx]
mov byte [rbx], 0
mov r12d, dword [rsp + 0x5c]
inc r12d
mov dword [rsp + 0x5c], r12d
mov rax, qword [rbp + 0x70]
inc rax
mov qword [rbp + 0x70], rax
cmp rax, qword [rbp + 0xb8]
vmovss xmm14, dword [rbp - 0x64]
vmovss xmm6, dword [rbp - 0x60]
vmovss xmm10, dword [rbp - 0x5c]
movabs rdi, 0xcbf29ce484222325
lea r15, [r13 + 0x30c]
jle 0x18008aaa0
lea r15, [r13 + 0x30c]
lea rdx, [r13 + 8]
mov rax, qword [0x180233850]
vmovss xmm0, dword [rax + 0xe00]
vmovss xmm2, dword [rax + 0xe04]
vmovss xmm1, dword [0x18020a6e4]
vcomiss xmm0, xmm1
jb 0x18008bb4d
vcomiss xmm2, xmm1
jb 0x18008bb4d
mov cl, 1
jmp 0x18008bb4f
xor cl, cl
test cl, cl
je 0x18008bd03
vmovsd xmm0, qword [rax + 0xe00]
vmovsd qword [rbp + 0x1d8], xmm0
lea r8, [rbp + 0x1d8]
lea rdx, [rbp + 0x1e0]
mov rcx, r13
call fcn.180087890
mov r8, rax
lea rdx, [rbp + 0x90]
mov rcx, r13
call fcn.1800891b0
nop
mov rbx, qword [rbp + 0xa0]
test rbx, rbx
je 0x18008bcec
lea rdx, [rbp + 0x90]
mov r14, qword [rbp + 0x90]
mov r15, qword [rbp + 0xa8]
cmp r15, 0xf
cmova rdx, r14
mov r9, rdi
xor r12d, r12d
mov ecx, r12d
test rbx, rbx
je 0x18008bbf3
movabs r8, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r8
inc rcx
cmp rcx, rbx
jb 0x18008bbe0
lea r8, [rbp + 0x90]
lea rdx, [rsp + 0x70]
lea rcx, [r13 + 0x188]
call fcn.180095560
mov rdi, qword [rax + 8]
test rdi, rdi
jne 0x18008bc1b
mov rdi, qword [r13 + 0x190]
cmp rdi, qword [r13 + 0x190]
je 0x18008bc34
xor ecx, ecx
call fcn.180050f50
lea rcx, [rdi + 0x38]
jmp 0x18008bccf
lea rdi, [r13 + 0x1c8]
lea rcx, [rbp + 0x90]
cmp r15, 0xf
cmova rcx, r14
test rbx, rbx
je 0x18008bc96
movabs rdi, 0xcbf29ce484222325
movabs r13, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r12 + rcx]
xor rdi, rax
imul rdi, r13
inc r12
cmp r12, rbx
jb 0x18008bc70
mov qword [rbp + 0x78], rdi
mov r13, qword [rbp + 0x1d0]
lea rdi, [r13 + 0x1c8]
mov r9, qword [rbp + 0x78]
lea r8, [rbp + 0x90]
lea rdx, [rsp + 0x70]
mov rcx, rdi
call fcn.180095560
mov rbx, qword [rax + 8]
test rbx, rbx
jne 0x18008bcbb
mov rbx, qword [rdi + 8]
cmp rbx, qword [r13 + 0x1d0]
je 0x18008bcec
xor ecx, ecx
call fcn.180050f50
lea rcx, [rbx + 0x38]
cmp qword [rcx + 0x18], 0xf
jbe 0x18008bcd9
mov rcx, qword [rcx]
mov r8d, 1
xor edx, edx
call fcn.180073810
call fcn.18004c5b0
nop
lea rcx, [rbp + 0x90]
call fcn.180091b30
lea rdx, [r13 + 8]
lea r15, [r13 + 0x30c]
vaddss xmm0, xmm6, dword [0x18020a390]
vmovss dword [rbp + 0x1d0], xmm0
mov rcx, qword [rdx + 8]
sub rcx, qword [rdx]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
vxorps xmm0, xmm0, xmm0
js 0x18008bd42
vcvtsi2ss xmm0, xmm0, rdx
jmp 0x18008bd57
mov rax, rdx
shr rax, 1
and edx, 1
or rax, rdx
vcvtsi2ss xmm0, xmm0, rax
vaddss xmm0, xmm0, xmm0
vmulss xmm0, xmm0, dword [r15]
vmovss dword [rbp + 0x1d4], xmm0
lea rcx, [rbp + 0x1d0]
call fcn.1800762c0
cmp byte [r13 + 0x5b], 0
je 0x18008bd99
mov rcx, r13
call fcn.180090280
xor edx, edx
mov rcx, qword [0x180233850]
mov rcx, qword [rcx + 0x3ee0]
call fcn.18004c8a0
mov byte [r13 + 0x5b], 0
lea r11, [rsp + 0x288]
vmovaps xmm6, xmmword [r11 - 0x18]
vmovaps xmm7, xmmword [r11 - 0x28]
vmovaps xmm8, xmmword [r11 - 0x38]
vmovaps xmm9, xmmword [r11 - 0x48]
vmovaps xmm10, xmmword [r11 - 0x58]
vmovaps xmm11, xmmword [r11 - 0x68]
vmovaps xmm12, xmmword [r11 - 0x78]
vmovaps xmm13, xmmword [r11 - 0x88]
vmovaps xmm14, xmmword [r11 - 0x98]
vmovaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret