Function at 0x14001e470
Capabilities:
Hash data with crc32

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x308
vmovaps xmmword [rsp + 0x2f0], xmm15
vmovaps xmmword [rsp + 0x2e0], xmm14
vmovaps xmmword [rsp + 0x2d0], xmm13
vmovaps xmmword [rsp + 0x2c0], xmm12
vmovaps xmmword [rsp + 0x2b0], xmm11
vmovaps xmmword [rsp + 0x2a0], xmm10
vmovaps xmmword [rsp + 0x290], xmm9
vmovaps xmmword [rsp + 0x280], xmm8
vmovaps xmmword [rsp + 0x270], xmm7
vmovaps xmmword [rsp + 0x260], xmm6
mov r14d, r8d
mov qword [rsp + 0xc0], rdx
mov r13, rcx
mov rax, qword [0x1400c1548]
xor rax, rsp
mov qword [rsp + 0x258], rax
mov r15, qword [0x1400c1650]
movzx ebx, byte [rcx]
test bl, bl
je 0x14001e564
lea rcx, [r13 + 2]
mov edi, 0xffffffff
lea rbp, [0x140069980]
mov eax, 0xffffffff
jmp 0x14001e548
movzx ebx, bl
movzx esi, al
shr eax, 8
xor esi, ebx
xor eax, dword [rbp + rsi*4]
inc rcx
mov ebx, edx
test dl, dl
je 0x14001e560
movzx edx, byte [rcx - 1]
cmp bl, 0x23
jne 0x14001e530
cmp dl, 0x23
jne 0x14001e530
cmp byte [rcx], 0x23
cmove eax, edi
mov dl, 0x23
jmp 0x14001e530
not eax
jmp 0x14001e566
xor eax, eax
mov rcx, qword [r15 + 0x3fe8]
movsxd rsi, dword [r15 + 0x3fe0]
test rsi, rsi
je 0x14001e5b6
mov rdx, rcx
mov rdi, rsi
mov rbp, rsi
jmp 0x14001e598
mov rdi, rbp
test rbp, rbp
je 0x14001e5bb
shr rbp, 1
mov rbx, rbp
shl rbx, 4
cmp dword [rdx + rbx], eax
jae 0x14001e590
not rbp
add rbp, rdi
add rdx, rbx
add rdx, 0x10
jmp 0x14001e590
xor esi, esi
mov rdx, rcx
shl rsi, 4
add rcx, rsi
cmp rdx, rcx
je 0x14001e5f3
cmp dword [rdx], eax
jne 0x14001e5f3
mov rbp, qword [rdx + 8]
mov qword [rsp + 0x1f0], rbp
mov dword [rsp + 0x80], 0
mov r8d, 0
test rbp, rbp
jne 0x14001e830
jmp 0x14001e5ff
mov qword [rsp + 0x1f0], 0
mov rdx, qword [0x1400c1660]
mov ecx, 0x400
call qword [0x14007b350]
mov r12, rax
mov rax, qword [0x1400c1650]
test rax, rax
je 0x14001e691
mov ecx, dword [rax + 0x3f58]
movsx rdx, word [rax + 0x60f0]
cmp dword [rax + rdx*8 + 0x60f4], ecx
jne 0x14001e642
mov ecx, dword [rax + rdx*8 + 0x60f8]
inc ecx
jmp 0x14001e683
inc edx
movsxd rdx, edx
imul rbp, rdx, 0x2aaaaaab
mov rbx, rbp
shr rbx, 0x3f
shr rbp, 0x20
add ebp, ebx
add ebp, ebp
lea ebp, [rbp + rbp*2]
sub edx, ebp
mov word [rax + 0x60f0], dx
movsxd rdx, edx
mov dword [rax + rdx*8 + 0x60f4], ecx
mov dword [rax + rdx*8 + 0x60f8], 0
mov cx, 1
mov word [rax + rdx*8 + 0x60f8], cx
inc dword [rax + 0x60e8]
mov rcx, r12
mov rdx, r15
mov r8, r13
call fcn.140015120
mov qword [rsp + 0x210], r12
mov dword [r12 + 0x14], r14d
mov eax, dword [r12 + 0x10]
mov rcx, qword [r15 + 0x3fe8]
movsxd rbp, dword [r15 + 0x3fe0]
test rbp, rbp
je 0x14001e6f6
mov rdx, rcx
mov rsi, rbp
mov rdi, rbp
jmp 0x14001e6d8
mov rsi, rdi
test rdi, rdi
je 0x14001e6fb
shr rdi, 1
mov rbx, rdi
shl rbx, 4
cmp dword [rdx + rbx], eax
jae 0x14001e6d0
not rdi
add rdi, rsi
add rdx, rbx
add rdx, 0x10
jmp 0x14001e6d0
xor ebp, ebp
mov rdx, rcx
shl rbp, 4
add rcx, rbp
cmp rdx, rcx
je 0x14001e71d
cmp dword [rdx], eax
jne 0x14001e71d
mov qword [rdx + 8], r12
test r14d, 0x100
je 0x14001e74d
jmp 0x14001e7d2
lea rcx, [r15 + 0x3fe0]
mov dword [rsp + 0x188], eax
mov qword [rsp + 0x190], r12
lea r8, [rsp + 0x188]
call fcn.14000e640
test r14d, 0x100
jne 0x14001e7d2
movsxd rax, dword [r12 + 0x2a4]
cmp rax, 0xffffffffffffffff
je 0x14001e786
mov rcx, qword [0x1400c1650]
mov rdx, qword [rcx + 0x5f98]
test rdx, rdx
je 0x14001e7d2
add rdx, rax
mov eax, dword [r15 + 0x5f98]
mov ecx, edx
sub ecx, eax
mov dword [r12 + 0x2a4], ecx
jmp 0x14001e7d4
mov rax, qword [0x1400c1650]
mov rcx, qword [rax + 0x5f98]
test rcx, rcx
je 0x14001e7d2
mov ebx, dword [r12 + 0x10]
add rcx, 4
mov rdx, rcx
jmp 0x14001e7c6
movsxd rbp, dword [rdx - 4]
add rdx, rbp
movsxd rbp, dword [rax + 0x5f90]
add rbp, rcx
cmp rdx, rbp
je 0x14001e7d2
cmp dword [rdx], ebx
jne 0x14001e7b0
cmp byte [rdx + 0xf], 0
jne 0x14001e7b0
jmp 0x14001e771
xor edx, edx
mov rcx, r12
call fcn.14002ca10
lea rcx, [r15 + 0x3fa0]
test r14d, 0x2000
je 0x14001e807
cmp dword [rcx], 0
je 0x14001e807
mov rdx, qword [r15 + 0x3fa8]
lea r8, [rsp + 0x210]
call fcn.14002d440
jmp 0x14001e814
lea rdx, [rsp + 0x210]
call fcn.140013f90
mov rbp, qword [rsp + 0x210]
mov qword [rsp + 0x1f0], rbp
mov al, 1
mov dword [rsp + 0x80], eax
mov r8b, 1
mov eax, dword [r15 + 0x3ffc]
cmp eax, dword [rbp + 0x10]
jne 0x14001e845
int3
mov eax, r14d
not eax
mov esi, r14d
or esi, 6
test eax, 0x30200
cmovne esi, r14d
mov r14d, dword [r15 + 0x3f58]
cmp dword [r15 + 0x3fd0], 0
je 0x14001e86e
xor eax, eax
jmp 0x14001e876
movzx eax, byte [r15 + 0x3f65]
mov edi, dword [rbp + 0x270]
mov byte [rbp + 0xc6], al
lea eax, [r14 - 1]
test esi, 0x4000000
mov dword [rsp + 0x7c], r8d
jne 0x14001e8a8
cmp edi, eax
setl byte [rbp + 0xc4]
jl 0x14001e8df
mov dword [rsp + 0x60], 0
jmp 0x14001e8ef
cmp edi, eax
setl al
movsxd rcx, dword [r15 + 0x4ae8]
mov rdx, qword [r15 + 0x4ae0]
imul rcx, rcx, 0x38
mov ebx, dword [rbp + 0xd8]
cmp ebx, dword [rdx + rcx]
setne bl
cmp rbp, qword [rdx + rcx + 8]
setne cl
or cl, bl
or cl, al
mov byte [rbp + 0xc4], cl
je 0x14001e89e
or dword [rbp + 0xe8], 0x80808
mov al, 1
mov dword [rsp + 0x60], eax
lea r12, [r15 + 0x3fd0]
cmp edi, r14d
mov dword [rsp + 0x64], edi
mov qword [rsp + 0xb8], r13
jne 0x14001e90f
mov esi, dword [rbp + 0x14]
jmp 0x14001ea9c
mov r13, r14
mov qword [rsp + 0x188], rbp
mov rdi, qword [0x1400c1650]
mov ecx, esi
shr ecx, 0x18
mov eax, esi
and eax, 0x14000000
cmp eax, 0x4000000
setne r14b
and r14b, cl
movzx ecx, byte [rbp + 0xc7]
cmp cl, r14b
sete dl
test r14b, r14b
jne 0x14001e985
mov ebx, dword [rsp + 0x7c]
not bl
and bl, dl
jne 0x14001e985
lea rcx, [rdi + 0x3fb0]
lea rdx, [rsp + 0x188]
call fcn.140013f90
mov eax, dword [rdi + 0x3fb0]
dec eax
mov rbp, qword [rsp + 0x188]
mov word [rbp + 0xd4], ax
jmp 0x14001ea30
cmp cl, r14b
sete cl
or cl, byte [rsp + 0x7c]
jne 0x14001ea30
mov ecx, esi
and ecx, 0x1000000
je 0x14001ea30
cmp eax, 0x4000000
je 0x14001ea30
movsx eax, word [rbp + 0xd4]
lea edx, [rax + 1]
mov ecx, dword [rdi + 0x3fb0]
cmp edx, ecx
jge 0x14001e9f8
cdqe
inc rax
nop word [rax + rax]
mov rcx, qword [rdi + 0x3fb8]
mov rcx, qword [rcx + rax*8]
dec word [rcx + 0xd4]
inc rax
movsxd rcx, dword [rdi + 0x3fb0]
cmp rax, rcx
jl 0x14001e9d0
movzx eax, word [rbp + 0xd4]
movsxd rbx, ecx
mov rdx, qword [rdi + 0x3fb8]
movsx r8, ax
lea rcx, [rdx + r8*8]
lea rdx, [rdx + r8*8]
add rdx, 8
not r8
add r8, rbx
shl r8, 3
call sub.VCRUNTIME140.dll_memmove
dec dword [rdi + 0x3fb0]
mov word [rbp + 0xd4], 0xffff
mov byte [rbp + 0xc7], r14b
mov rbp, qword [rsp + 0x1f0]
mov dword [rbp + 0x14], esi
xor eax, eax
test byte [r15 + 0x4a01], 1
je 0x14001ea55
mov eax, dword [r15 + 0x4a38]
mov dword [rbp + 0x18], eax
mov r14, r13
mov dword [rbp + 0x270], r14d
vmovsd xmm0, qword [r15 + 0x3f50]
vcvtsd2ss xmm0, xmm0, xmm0
vmovss dword [rbp + 0x274], xmm0
mov word [rbp + 0xd0], 0
mov eax, dword [r15 + 0x3ff0]
lea ecx, [rax + 1]
mov dword [r15 + 0x3ff0], ecx
mov word [rbp + 0xd2], ax
mov edi, dword [rsp + 0x64]
movsxd rax, dword [r12]
test rax, rax
je 0x14001eac3
mov rcx, qword [r15 + 0x3fd8]
imul rax, rax, 0x68
mov r13, qword [rax + rcx - 0x68]
cmp edi, r14d
jne 0x14001eacb
mov rax, qword [rbp + 0x378]
jmp 0x14001ead7
xor r13d, r13d
cmp edi, r14d
je 0x14001eaba
xor eax, eax
test esi, 0x5000000
cmovne rax, r13
mov qword [rsp + 0x90], rax
mov dword [rsp + 0x4c], esi
cmp dword [rbp + 0x100], 0
jne 0x14001eb07
lea rcx, [rbp + 0x100]
add rbp, 0x10
mov rdx, rbp
call fcn.14000f000
mov rbp, qword [rsp + 0x1f0]
mov qword [r15 + 0x4000], rbp
mov qword [rsp + 0x188], rbp
vmovdqu ymm0, ymmword [r15 + 0x49b0]
vmovups ymm1, ymmword [r15 + 0x49d0]
vmovups ymm2, ymmword [r15 + 0x49dc]
vmovdqu ymmword [rsp + 0x190], ymm0
vmovups ymmword [rsp + 0x1b0], ymm1
vmovups ymmword [rsp + 0x1bc], ymm2
movzx eax, word [rbp + 0x100]
mov word [rsp + 0x1dc], ax
movzx eax, word [r15 + 0x4a78]
mov word [rsp + 0x1de], ax
movzx eax, word [r15 + 0x4a88]
mov word [rsp + 0x1e0], ax
movzx eax, word [r15 + 0x4a98]
mov word [rsp + 0x1e2], ax
movzx eax, word [r15 + 0x4aa8]
mov word [rsp + 0x1e4], ax
movzx eax, word [r15 + 0x4ac8]
mov word [rsp + 0x1e6], ax
movzx eax, word [r15 + 0x4ab8]
mov word [rsp + 0x1e8], ax
movzx eax, word [r15 + 0x4ae8]
mov word [rsp + 0x1ea], ax
movzx eax, word [r15 + 0x5eb4]
mov word [rsp + 0x1ec], ax
lea rdx, [rsp + 0x188]
mov rcx, r12
vzeroupper
call fcn.140026550
mov edx, dword [rsp + 0x4c]
test edx, 0x10000000
je 0x14001ec01
inc dword [r15 + 0x5e24]
mov rax, qword [rsp + 0x1f0]
cmp edi, r14d
mov r12, qword [rsp + 0x90]
jne 0x14001ec23
mov edi, edx
and edi, 0x4000000
jmp 0x14001ecde
mov qword [rax + 0x378], r12
vmovq xmm0, rax
vpbroadcastq ymm0, xmm0
vmovdqu ymmword [rax + 0x388], ymm0
mov ecx, edx
and ecx, 0x3000000
cmp ecx, 0x1000000
jne 0x14001ec60
test r12, r12
je 0x14001ec60
mov rcx, qword [r12 + 0x388]
mov qword [rax + 0x388], rcx
mov edi, edx
and edi, 0x4000000
je 0x14001ec7e
test r12, r12
je 0x14001ec7e
mov rcx, qword [r12 + 0x390]
mov qword [rax + 0x390], rcx
test edx, 0x5000000
je 0x14001eca4
mov ecx, edx
and ecx, 0x8000000
jne 0x14001eca4
test r12, r12
je 0x14001eca4
mov rcx, qword [r12 + 0x398]
mov qword [rax + 0x398], rcx
test byte [rax + 0x16], 0x80
je 0x14001ecc4
mov rcx, rax
nop dword [rax]
mov rcx, qword [rcx + 0x378]
mov qword [rax + 0x3a0], rcx
test byte [rcx + 0x16], 0x80
jne 0x14001ecb0
mov qword [rax + 0x380], r13
xor ecx, ecx
test edx, 0x1000000
cmovne rcx, r13
mov qword [rax + 0x3a8], rcx
lea rcx, [r15 + 0x4980]
add rax, 0x10
test edx, 0x800000
cmovne rax, rcx
mov ebx, dword [rax]
mov rbp, qword [0x1400c1650]
mov dword [rsp + 0x210], ebx
mov rax, qword [rbp + 0x4000]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x214], eax
lea rcx, [rbp + 0x4aa8]
lea rdx, [rsp + 0x210]
vzeroupper
call fcn.140013f90
mov dword [rbp + 0x4980], ebx
mov eax, dword [r15 + 0x4980]
mov rcx, qword [rsp + 0x1f0]
mov dword [rcx + 0x3f0], eax
test edi, edi
je 0x14001ed90
lea rax, [r15 + 0x4ae8]
movsxd rdx, dword [r15 + 0x4ae8]
mov rbx, qword [r15 + 0x4ae0]
imul rbp, rdx, 0x38
lea rdx, [rbx + rbp]
mov qword [rbx + rbp + 8], rcx
mov ecx, dword [r13 + 0x168]
mov dword [rbx + rbp + 0x18], ecx
mov rcx, rax
call fcn.140026730
mov eax, dword [rbx + rbp]
mov rcx, qword [rsp + 0x1f0]
mov dword [rcx + 0xd8], eax
test byte [r15 + 0x4a00], 1
jne 0x14001ed9e
xor esi, esi
jmp 0x14001ee0c
mov eax, dword [rcx + 0xe8]
movsx edx, al
mov r8d, dword [r15 + 0x4a04]
test edx, r8d
setne sil
je 0x14001ee00
vmovsd xmm0, qword [r15 + 0x4a18]
vmulps xmm0, xmm0, xmm0
vmovshdup xmm1, xmm0
vaddss xmm0, xmm1, xmm0
vucomiss xmm0, dword [0x14006ac0c]
jbe 0x14001ee00
mov rdx, qword [r15 + 0x4a10]
mov qword [rcx + 0xec], rdx
mov rdx, qword [r15 + 0x4a18]
mov qword [rcx + 0xf4], rdx
and eax, 0xfffffff1
mov dword [rcx + 0xe8], eax
mov sil, 1
jmp 0x14001ee0c
lea rdx, [r15 + 0x4a10]
call fcn.140017cf0
mov eax, dword [r15 + 0x4a00]
test al, 2
jne 0x14001ee2f
mov dword [rsp + 0x50], 0
xor r13d, r13d
test al, 0x80
jne 0x14001eed2
jmp 0x14001ef28
mov rcx, qword [rsp + 0x1f0]
mov eax, dword [rcx + 0xe8]
mov edx, eax
shr edx, 8
movsx edx, dl
mov r8d, dword [r15 + 0x4a08]
test edx, r8d
je 0x14001ee74
vpxor xmm0, xmm0, xmm0
vucomiss xmm0, dword [r15 + 0x4a20]
setb r13b
vucomiss xmm0, dword [r15 + 0x4a24]
setb dl
mov dword [rsp + 0x50], edx
jmp 0x14001ee7f
xor r13d, r13d
mov dword [rsp + 0x50], 0
mov edx, dword [rcx + 0x18]
test dl, 4
je 0x14001ee9f
and eax, 0x400
jne 0x14001ee9f
vmovss xmm0, dword [rcx + 0x38]
vmovss dword [r15 + 0x4a20], xmm0
mov edx, dword [rcx + 0x18]
test dl, 8
je 0x14001eebb
test byte [rcx + 0xe9], 4
jne 0x14001eebb
vmovss xmm0, dword [rcx + 0x3c]
vmovss dword [r15 + 0x4a24], xmm0
lea rdx, [r15 + 0x4a20]
call fcn.140026900
mov eax, dword [r15 + 0x4a00]
test al, 0x80
je 0x14001ef28
vmovss xmm1, dword [r15 + 0x4a30]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm1
ja 0x14001eeff
mov rax, qword [rsp + 0x1f0]
vmovss dword [rax + 0x9c], xmm1
mov dword [rax + 0xa4], 0
vmovss xmm1, dword [r15 + 0x4a34]
vucomiss xmm0, xmm1
ja 0x14001ef28
mov rax, qword [rsp + 0x1f0]
vmovss dword [rax + 0xa0], xmm1
mov dword [rax + 0xa8], 0
test byte [r15 + 0x4a00], 4
jne 0x14001ef4b
cmp dword [rsp + 0x64], r14d
je 0x14001ef5e
mov rax, qword [rsp + 0x1f0]
mov qword [rax + 0x50], 0
jmp 0x14001ef5e
mov rax, qword [rsp + 0x1f0]
mov rcx, qword [r15 + 0x4a28]
mov qword [rax + 0x50], rcx
mov dword [rsp + 0x78], edi
mov eax, dword [r15 + 0x4a00]
test al, 8
je 0x14001efb4
mov ebx, dword [r15 + 0x4a0c]
movzx ecx, byte [r15 + 0x4a3c]
mov rdx, qword [rsp + 0x1f0]
mov edi, dword [rdx + 0xe8]
test ebx, ebx
je 0x14001ef9b
mov ebp, edi
shr ebp, 0x10
movsx ebp, bpl
test ebp, ebx
je 0x14001efb4
and edi, 0xfff1ffff
mov dword [rdx + 0xe8], edi
mov byte [rdx + 0xc1], cl
mov eax, dword [r15 + 0x4a00]
test al, 0x20
je 0x14001efc7
mov rcx, qword [rsp + 0x1f0]
xor edx, edx
call fcn.140017710
mov r8, qword [rsp + 0x1f0]
cmp byte [r8 + 0xc4], 0
je 0x14001efe4
and dword [r8 + 0xe8], 0xfff7f7f7
mov qword [r15 + 0x4000], 0
cmp dword [rsp + 0x64], r14d
jne 0x14001f028
mov rax, qword [0x1400c1650]
mov qword [rax + 0x4000], r8
movsxd rcx, dword [r8 + 0x1c0]
cmp rcx, 0xffffffffffffffff
je 0x14001f22a
imul rcx, rcx, 0x250
add rcx, qword [rax + 0x4e40]
jmp 0x14001f22c
mov r12d, esi
movzx eax, byte [r8 + 0xe5]
mov byte [rsp + 0x68], al
mov byte [r8 + 0xbe], 1
cmp qword [rsp + 0xc0], 0
setne byte [r8 + 0xc8]
vmovaps xmm0, xmmword [0x14006ac10]
vmovups xmmword [r8 + 0x248], xmm0
add r8, 0x100
mov rcx, r8
mov edx, 1
call fcn.14001d340
mov rax, qword [rsp + 0x1f0]
mov rcx, qword [rax + 0x2a8]
call fcn.140030cf0
mov rcx, qword [rsp + 0x1f0]
mov dword [rcx + 0x1c0], 0xffffffff
cmp byte [rcx + 0x3fc], 0
je 0x14001f0a9
call fcn.1400168a0
cmp qword [r15 + 0x4d20], 0
mov rdi, qword [rsp + 0x1f0]
mov esi, dword [rsp + 0x7c]
je 0x14001f122
movzx eax, byte [rdi + 0x16]
and al, 2
shr al, 1
or al, sil
jne 0x14001f122
mov rbx, qword [rdi + 8]
mov rbp, qword [rsp + 0xb8]
mov rcx, rbp
mov rdx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x14001f122
movsxd rax, dword [rdi + 0x80]
mov qword [rsp + 0x210], rax
lea rdx, [rsp + 0x210]
mov rcx, rbx
mov r8, rbp
call fcn.14000d5b0
mov rdi, qword [rsp + 0x1f0]
mov qword [rdi + 8], rax
mov eax, dword [rsp + 0x210]
mov dword [rdi + 0x80], eax
lea r8, [rdi + 0x48]
lea rdx, [rdi + 0x40]
mov rcx, rdi
call fcn.140025f40
mov rbx, qword [rsp + 0x1f0]
movzx eax, byte [rbx + 0xe4]
test al, al
jle 0x14001f14d
dec al
mov byte [rbx + 0xe4], al
movzx eax, byte [rbx + 0xe5]
test al, al
mov edx, dword [rsp + 0x4c]
mov edi, dword [rsp + 0x78]
jle 0x14001f168
dec al
mov byte [rbx + 0xe5], al
movzx eax, byte [rbx + 0xe6]
test al, al
jle 0x14001f17b
dec al
mov byte [rbx + 0xe6], al
mov qword [rsp + 0xc8], r14
test sil, sil
je 0x14001f19b
test r13b, r13b
je 0x14001f194
cmp byte [rsp + 0x50], 0
jne 0x14001f19b
mov byte [rbx + 0xe5], 1
mov eax, dword [rsp + 0x60]
mov r14d, eax
xor r14b, 1
mov esi, r12d
jne 0x14001f1f1
mov eax, edx
and eax, 0x6000000
je 0x14001f1f1
mov byte [rbx + 0xe5], 1
test dl, 0x40
je 0x14001f1f1
test r13b, r13b
jne 0x14001f1d3
mov dword [rbx + 0x38], 0
mov dword [rbx + 0x30], 0
cmp byte [rsp + 0x50], 0
jne 0x14001f1e8
mov dword [rbx + 0x3c], 0
mov dword [rbx + 0x34], 0
vxorps xmm0, xmm0, xmm0
vmovups xmmword [rbx + 0x40], xmm0
mov rbp, qword [0x1400c1650]
mov rax, qword [rbp + 0x4b10]
mov r12, qword [rax]
mov qword [rbx + 0x20], r12
mov qword [rbp + 0x4000], rbx
movsxd rax, dword [rbx + 0x1c0]
cmp rax, 0xffffffffffffffff
je 0x14001f279
imul rax, rax, 0x250
add rax, qword [rbp + 0x4e40]
jmp 0x14001f27b
xor ecx, ecx
mov r13d, dword [rsp + 0x64]
mov qword [rax + 0x4e18], rcx
mov rdx, qword [r8]
vmovss xmm0, dword [r8 + 0x2a0]
vmulss xmm0, xmm0, dword [rdx + 0x3d3c]
mov rdx, qword [r8 + 0x378]
test rdx, rdx
je 0x14001f260
vmulss xmm0, xmm0, dword [rdx + 0x2a0]
vmovss dword [rax + 0x3d50], xmm0
vmovss dword [rax + 0x3d38], xmm0
test rcx, rcx
je 0x14001f2c2
xor ecx, ecx
jmp 0x14001f2cd
xor eax, eax
mov qword [rbp + 0x4e18], rax
mov rcx, qword [rbx]
vmovss xmm0, dword [rbx + 0x2a0]
vmulss xmm0, xmm0, dword [rcx + 0x3d3c]
mov rcx, qword [rbx + 0x378]
test rcx, rcx
je 0x14001f2a9
vmulss xmm0, xmm0, dword [rcx + 0x2a0]
vmovss dword [rbp + 0x3d50], xmm0
vmovss dword [rbp + 0x3d38], xmm0
test rax, rax
je 0x14001f2d9
xor eax, eax
jmp 0x14001f2e4
cmp qword [r8 + 0x1b8], 0
sete cl
mov byte [r8 + 0x170], cl
jmp 0x14002188d
cmp qword [rbx + 0x1b8], 0
sete al
mov byte [rbx + 0x170], al
test edx, 0x1000000
jne 0x14001f332
test edx, 0x8000000
mov eax, 0x3920
mov ecx, 0x38fc
cmovne rax, rcx
test edx, 0x6000000
cmove rax, rcx
vmovss xmm0, dword [r15 + rax]
vmovss dword [rbx + 0x64], xmm0
mov rax, qword [r15 + 0x38f0]
mov qword [rbx + 0x58], rax
vmovd xmm0, eax
mov al, 1
mov dword [rsp + 0x5c], eax
jmp 0x14001f39a
vmovss xmm2, dword [r15 + 0x3918]
vmovss dword [rbx + 0x64], xmm2
mov rax, qword [r15 + 0x38f0]
mov qword [rbx + 0x58], rax
vmovd xmm0, eax
mov al, 1
mov dword [rsp + 0x5c], eax
test edi, edi
jne 0x14001f39a
mov dword [rsp + 0x5c], 0
test byte [rbx + 0x18], 2
jne 0x14001f39a
vxorps xmm1, xmm1, xmm1
vucomiss xmm2, xmm1
jne 0x14001f39a
test edx, 0x400
je 0x14001f382
vmovss xmm1, dword [r15 + 0x38f4]
mov dword [rbx + 0x58], 0
vmovss dword [rbx + 0x5c], xmm1
vpxor xmm0, xmm0, xmm0
mov dword [rsp + 0x5c], 0
test edi, edi
setne byte [rsp + 0x70]
vmaxss xmm0, xmm0, dword [r15 + 0x3934]
vmaxss xmm0, xmm0, dword [r15 + 0x4a64]
vmovss dword [rbx + 0x174], xmm0
vmovss xmm0, dword [r15 + 0x4a68]
vmovss dword [rbx + 0x178], xmm0
test dl, 0x21
je 0x14001f531
mov byte [rbx + 0xc1], 0
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x58], eax
mov byte [rbx + 0xc2], 0
vmovss xmm7, dword [rbx + 0xb4]
vmovss xmm6, dword [rbx + 0xb8]
mov dword [rbx + 0x68], 0
mov dword [rbx + 0x70], 0
mov eax, dword [rbx + 0x14]
vxorps xmm1, xmm1, xmm1
vxorps xmm0, xmm0, xmm0
test al, 1
jne 0x14001f453
mov rcx, qword [rbx]
vmovss xmm0, dword [rbx + 0x2a0]
vmulss xmm2, xmm0, dword [rcx + 0x3d3c]
mov rdx, qword [rbx + 0x378]
test rdx, rdx
je 0x14001f442
vmulss xmm2, xmm2, dword [rdx + 0x2a0]
vmovss xmm0, dword [rcx + 0x3928]
vfmadd132ss xmm0, xmm2, dword [0x14006aaf8]
test eax, 0x400
je 0x14001f49e
mov rax, qword [rbx]
vmovss xmm1, dword [rbx + 0x178]
vmovss xmm2, dword [rbx + 0x2a0]
vmulss xmm2, xmm2, dword [rax + 0x3d3c]
mov rcx, qword [rbx + 0x378]
test rcx, rcx
je 0x14001f489
vmulss xmm2, xmm2, dword [rcx + 0x2a0]
vaddss xmm2, xmm2, xmm1
vmovss xmm1, dword [rax + 0x3928]
vfmadd132ss xmm1, xmm2, dword [0x14006aaf8]
vaddss xmm0, xmm1, xmm0
vmovss dword [rbx + 0x6c], xmm0
mov dword [rbx + 0x74], 0
mov qword [rbx + 0xb4], 0
lea r8, [rbx + 0x48]
lea rcx, [rsp + 0x180]
mov rdx, rbx
call fcn.140026050
mov rdx, qword [rsp + 0x1f0]
mov ebp, dword [rsp + 0x4c]
test bpl, 0x40
je 0x14001f4ec
cmp byte [rdx + 0xc1], 0
je 0x14001f6d9
cmp byte [rdx + 0xdc], 0
jle 0x14001f662
test r13b, r13b
mov r13d, dword [rsp + 0x5c]
jne 0x14001f674
cmp byte [rdx + 0xde], 0
vmovss xmm0, dword [rsp + 0x180]
je 0x14001f51e
vmaxss xmm0, xmm0, dword [rdx + 0x38]
vmovss dword [rdx + 0x38], xmm0
mov al, 1
mov dword [rsp + 0x80], eax
jmp 0x14001f674
vmovss xmm0, dword [rbx + 0x2c]
mov edi, dword [rbx + 0x14]
vxorps xmm2, xmm2, xmm2
test dil, 1
jne 0x14001f57b
mov rax, qword [rbx]
vmovss xmm1, dword [rbx + 0x2a0]
vmulss xmm1, xmm1, dword [rax + 0x3d3c]
mov rcx, qword [rbx + 0x378]
test rcx, rcx
je 0x14001f56a
vmulss xmm1, xmm1, dword [rcx + 0x2a0]
vmovss xmm2, dword [rax + 0x3928]
vfmadd132ss xmm2, xmm1, dword [0x14006aaf8]
vaddss xmm0, xmm2, xmm0
vmovss xmm1, dword [rbx + 0x38]
vaddss xmm1, xmm1, dword [rbx + 0x28]
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x210], rax
vmovss dword [rsp + 0x218], xmm1
vmovss dword [rsp + 0x21c], xmm0
cmp qword [r15 + 0x4008], rbx
jne 0x14001f5f2
cmp dword [r15 + 0x4050], 0
jne 0x14001f5f2
cmp dword [r15 + 0x4054], 0
jne 0x14001f5f2
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0x210]
mov r8b, 1
call fcn.140017260
test al, al
je 0x14001f5f2
cmp word [r15 + 0x386a], 2
jne 0x14001f5f2
mov byte [rbx + 0xc2], 1
cmp byte [rbx + 0xc2], 0
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x58], eax
je 0x14001f3e7
movzx eax, byte [rbx + 0xc1]
mov ecx, eax
xor cl, 1
mov byte [rbx + 0xc1], cl
test al, al
movzx eax, byte [rsp + 0x80]
mov ecx, 1
cmove ecx, eax
mov dword [rsp + 0x58], ecx
test edi, 0x100
jne 0x14001f3e7
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, dword [rbp + 0x5f6c]
jb 0x14001f3e7
vmovss xmm0, dword [rbp + 0x1c]
vmovss dword [rbp + 0x5f6c], xmm0
jmp 0x14001f3e7
cmp byte [rdx + 0xdd], 0
mov r13d, dword [rsp + 0x5c]
jle 0x14001f715
cmp byte [rsp + 0x50], 0
jne 0x14001f6a6
cmp byte [rdx + 0xdd], 0
jle 0x14001f6a6
cmp byte [rdx + 0xde], 0
vmovss xmm0, dword [rsp + 0x184]
je 0x14001f69b
vmaxss xmm0, xmm0, dword [rdx + 0x3c]
vmovss dword [rdx + 0x3c], xmm0
mov al, 1
mov dword [rsp + 0x58], eax
cmp byte [rdx + 0xc1], 0
jne 0x14001f715
test byte [rdx + 0x15], 1
jne 0x14001f715
mov rax, qword [0x1400c1650]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, dword [rax + 0x5f6c]
jb 0x14001f715
vmovss xmm0, dword [rax + 0x1c]
vmovss dword [rax + 0x5f6c], xmm0
jmp 0x14001f715
test r13b, r13b
jne 0x14001f6f5
vmovss xmm0, dword [rsp + 0x180]
vmovss dword [rdx + 0x38], xmm0
mov al, 1
mov dword [rsp + 0x80], eax
cmp byte [rsp + 0x50], 0
mov r13d, dword [rsp + 0x5c]
jne 0x14001f715
vmovss xmm0, dword [rsp + 0x184]
vmovss dword [rdx + 0x3c], xmm0
mov al, 1
mov dword [rsp + 0x58], eax
and ebp, 0x1000000
lea r8, [rdx + 0x38]
lea rcx, [rsp + 0x210]
call fcn.140026310
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x210]
mov qword [rbx + 0x38], rax
cmp byte [rbx + 0xc1], 0
je 0x14001f795
test ebp, ebp
jne 0x14001f795
vxorps xmm0, xmm0, xmm0
test byte [rbx + 0x14], 1
mov edi, dword [rsp + 0x4c]
jne 0x14001f7a4
mov rcx, qword [rbx]
vmovss xmm0, dword [rbx + 0x2a0]
vmulss xmm1, xmm0, dword [rcx + 0x3d3c]
mov rdx, qword [rbx + 0x378]
test rdx, rdx
je 0x14001f782
vmulss xmm1, xmm1, dword [rdx + 0x2a0]
vmovss xmm0, dword [rcx + 0x3928]
vfmadd132ss xmm0, xmm1, dword [0x14006aaf8]
jmp 0x14001f7a4
mov rcx, rax
shr rcx, 0x20
vmovd xmm0, ecx
mov edi, dword [rsp + 0x4c]
mov dword [rbx + 0x30], eax
vmovss dword [rbx + 0x34], xmm0
cmp byte [rsp + 0x60], 0
je 0x14001f7ec
mov dword [rbx + 0xe0], 0xffffffff
mov eax, edi
and eax, 0xc000000
cmp eax, 0x4000000
setne al
or al, sil
jne 0x14001f7ec
mov rax, qword [r15 + 0x4af0]
movsxd rcx, dword [r15 + 0x4ae8]
imul rcx, rcx, 0x38
mov rax, qword [rcx + rax - 0x14]
mov qword [rbx + 0x28], rax
mov eax, edi
and eax, 0x3000000
mov dword [rsp + 0x50], eax
test edi, 0x1000000
je 0x14001f866
mov rax, qword [rsp + 0x90]
lea rcx, [rax + 0x1a0]
movzx eax, word [rax + 0x1a0]
mov word [rbx + 0xd0], ax
lea rdx, [rsp + 0x1f0]
call fcn.140013f90
movzx eax, byte [rsp + 0x70]
or al, sil
jne 0x14001f85a
cmp dword [rsp + 0x50], 0x3000000
je 0x14001f85a
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x90]
mov rax, qword [rax + 0x110]
mov qword [rbx + 0x28], rax
jmp 0x14001f862
mov rbx, qword [rsp + 0x1f0]
mov edi, dword [rsp + 0x4c]
vmovss xmm0, dword [rbx + 0xec]
vmovss xmm1, dword [0x140069040]
vucomiss xmm1, xmm0
je 0x14001f889
cmp byte [rbx + 0xe5], 0
je 0x14001f9cf
test edi, 0x10000000
jne 0x14001f8bd
cmp dword [rsp + 0x78], 0
sete al
or al, sil
jne 0x14001f8a5
cmp byte [rsp + 0x68], 0
jg 0x14001f8bd
test edi, 0x2000000
sete al
or al, sil
jne 0x14001f8e1
cmp dword [rsp + 0x50], 0x3000000
je 0x14001f8e1
lea rcx, [rsp + 0x210]
mov rdx, rbx
call fcn.140026a30
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x210]
mov qword [rbx + 0x28], rax
vmovsd xmm1, qword [r12 + 8]
vmovsd xmm0, qword [r12 + 0x10]
vaddps xmm2, xmm0, xmm1
vmovlhps xmm1, xmm1, xmm2
vmovups xmmword [rsp + 0x170], xmm1
vmovsd xmm1, qword [r12 + 0x18]
vmovsd xmm2, qword [r12 + 0x20]
vaddps xmm2, xmm2, xmm1
vmovsd xmm3, qword [r15 + 0x39ac]
vmovsd xmm4, qword [r15 + 0x39b4]
vmaxps xmm3, xmm3, xmm4
vsubps xmm11, xmm2, xmm3
vaddps xmm9, xmm3, xmm1
test sil, sil
jne 0x14001f9bc
test ebp, ebp
jne 0x14001f9bc
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jbe 0x14001f9bc
vmovshdup xmm0, xmm0
vucomiss xmm0, xmm1
jbe 0x14001f9bc
mov rax, qword [0x1400c1650]
vmovss xmm0, dword [rbx + 0x30]
vmovss xmm1, dword [rbx + 0x34]
cmp byte [rax + 0x5f], 0
je 0x14001faa2
test byte [rbx + 0x14], 1
mov esi, dword [rsp + 0x4c]
movzx edx, byte [rsp + 0x70]
jne 0x14001faab
mov rax, qword [rbx]
vmovss xmm1, dword [rbx + 0x2a0]
vmulss xmm2, xmm1, dword [rax + 0x3d3c]
mov rcx, qword [rbx + 0x378]
test rcx, rcx
je 0x14001f9a6
vmulss xmm2, xmm2, dword [rcx + 0x2a0]
vmovss xmm1, dword [rax + 0x3928]
vfmadd132ss xmm1, xmm2, dword [0x14006aaf8]
jmp 0x14001faab
vmovsd xmm0, qword [rbx + 0x28]
mov esi, dword [rsp + 0x4c]
movzx edx, byte [rsp + 0x70]
jmp 0x14001face
and byte [rbx + 0xe8], 0xf1
vinsertps xmm0, xmm0, dword [rbx + 0xf0], 0x10
movabs rax, 0x7f7fffff7f7fffff
mov qword [rbx + 0xec], rax
vmovsd xmm1, qword [rbx + 0x28]
vmovsd xmm2, qword [rbx + 0x30]
vmovsd xmm3, qword [rbx + 0xf4]
vfnmadd213ps xmm3, xmm2, xmm0
vroundps xmm0, xmm3, 0xb
vmovlps qword [rbx + 0x28], xmm0
vsubps xmm0, xmm0, xmm1
vxorps xmm1, xmm1, xmm1
vcmpeqps xmm2, xmm0, xmm1
vmovshdup xmm3, xmm0
vcmpeqps xmm1, xmm3, xmm1
vandps xmm1, xmm2, xmm1
vmovd eax, xmm1
test al, 1
jne 0x14001f8e1
test byte [rbx + 0x15], 1
jne 0x14001fa61
mov rax, qword [0x1400c1650]
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, dword [rax + 0x5f6c]
jb 0x14001fa61
vmovss xmm1, dword [rax + 0x1c]
vmovss dword [rax + 0x5f6c], xmm1
vmovsd xmm1, qword [rbx + 0x110]
vmovsd xmm2, qword [rbx + 0x130]
vaddps xmm1, xmm1, xmm0
vmovlps qword [rbx + 0x110], xmm1
vaddps xmm1, xmm2, xmm0
vmovlps qword [rbx + 0x130], xmm1
vmovddup xmm0, xmm0
vaddps xmm0, xmm0, xmmword [rbx + 0x120]
vmovups xmmword [rbx + 0x120], xmm0
jmp 0x14001f8e1
mov esi, dword [rsp + 0x4c]
movzx edx, byte [rsp + 0x70]
vinsertps xmm0, xmm0, xmm1, 0x10
vsubps xmm0, xmm9, xmm0
vmovsd xmm1, qword [rbx + 0x28]
vcmpltps xmm2, xmm1, xmm0
vminps xmm1, xmm11, xmm1
vblendvps xmm0, xmm1, xmm0, xmm2
vmovlps qword [rbx + 0x28], xmm0
vroundps xmm0, xmm0, 0xb
vmovlps qword [rbx + 0x28], xmm0
test esi, 0x1000000
jne 0x14001faf9
test esi, 0x8000000
sete al
and al, dl
cmp al, 1
jne 0x14001fb02
lea rax, [r15 + 0x391c]
jmp 0x14001fb09
lea rax, [r15 + 0x3914]
jmp 0x14001fb09
lea rax, [r15 + 0x38f8]
vmovss xmm0, dword [rax]
mov eax, esi
shr eax, 0xc
and eax, 1
or r14b, al
mov eax, r14d
xor al, 1
xor edi, edi
cmp dword [rsp + 0x50], 0
sete dil
movzx eax, al
test dl, dl
cmovne edi, eax
vmovss dword [rbx + 0x60], xmm0
test r14b, r14b
cmovne edi, eax
vxorps xmm1, xmm1, xmm1
vmovaps xmmword [rsp + 0x240], xmm1
xor ebp, ebp
test r13b, r13b
je 0x14001fb5c
cmp byte [r15 + 0x5e], 1
mov ebp, 2
sbb ebp, 0
vaddss xmm14, xmm0, dword [0x140069798]
vmovss xmm15, dword [r15 + 0x3d38]
mov r14d, 0xffffffff
cmp byte [rbx + 0xc1], 0
mov dword [rsp + 0x78], edi
mov dword [rsp + 0x70], ebp
jne 0x14001fba2
mov edx, dword [rbx + 0x14]
test dl, 0x42
jne 0x14001fba2
cmp byte [rbx + 0xdc], 0
jg 0x14001fba2
cmp byte [rbx + 0xdd], 0
jle 0x140021ba5
mov r12d, 0xffffffff
mov rbx, qword [rsp + 0x1f0]
mov byte [rbx + 0xc9], r12b
mov byte [rbx + 0xca], r14b
cmp byte [rbx + 0xc1], 0
mov eax, dword [rsp + 0x7c]
mov r14, qword [rsp + 0xc8]
mov r12, qword [rsp + 0x90]
jne 0x14001fd73
vxorps xmm1, xmm1, xmm1
test al, al
jne 0x14001fbff
vmovsd xmm0, qword [rbx + 0x40]
vmovsd xmm2, qword [rbx + 0x58]
vbroadcastss xmm1, dword [0x14006aaf8]
vfmadd213ps xmm1, xmm2, xmm0
cmp byte [rsp + 0x80], 0
je 0x14001fc10
vmovss xmm3, dword [rbx + 0x38]
jmp 0x14001fc20
vaddss xmm0, xmm7, dword [rbx + 0x210]
vsubss xmm3, xmm0, dword [rbx + 0x208]
vmovss xmm0, dword [rbx + 0x74]
cmp byte [rsp + 0x58], 0
je 0x14001fc5a
vmovss xmm2, dword [rbx + 0x3c]
vaddss xmm4, xmm0, dword [rbx + 0x6c]
vsubss xmm2, xmm2, xmm4
test esi, 0x4000
je 0x14001fc72
mov byte [rbx + 0xbd], 1
test esi, 0x8000
jne 0x14001fcac
lea r8, [rbx + 0xbd]
jmp 0x14001fc9f
vaddss xmm2, xmm6, dword [rbx + 0x214]
vsubss xmm2, xmm2, dword [rbx + 0x20c]
test esi, 0x4000
jne 0x14001fc42
vmovshdup xmm4, xmm1
vucomiss xmm4, xmm2
seta cl
test sil, 8
sete al
and al, cl
lea r8, [rbx + 0xbd]
mov byte [rbx + 0xbd], al
test esi, 0x8000
jne 0x14001fcb7
test al, al
je 0x14001fcc4
vmovss xmm4, dword [r15 + 0x395c]
mov al, 1
jmp 0x14001fcca
mov byte [rbx + 0xbc], 1
mov al, 1
jmp 0x14001fd25
mov byte [rbx + 0xbc], 1
test al, al
je 0x14001fcfb
jmp 0x14001fd25
vxorps xmm4, xmm4, xmm4
xor eax, eax
vsubss xmm3, xmm3, xmm4
vucomiss xmm1, xmm3
jbe 0x14001fd38
mov edx, esi
and edx, 8
jne 0x14001fd38
mov edx, esi
and edx, 0x800
mov ebp, edx
shr ebp, 0xb
mov byte [rbx + 0xbc], bpl
vxorps xmm3, xmm3, xmm3
test edx, edx
je 0x14001fd43
test al, al
jne 0x14001fd1c
lea rdx, [rbx + 0xbc]
vmovshdup xmm1, xmm1
vucomiss xmm1, xmm2
seta cl
test sil, 8
sete al
and al, cl
mov byte [r8], al
movzx ebp, byte [rdx]
test bpl, bpl
je 0x140021b7f
vmovss xmm3, dword [r15 + 0x395c]
test al, al
jne 0x14001fd47
vxorps xmm1, xmm1, xmm1
jmp 0x14001fd50
mov byte [rbx + 0xbc], 0
vxorps xmm3, xmm3, xmm3
test al, al
je 0x14001fd32
vmovss xmm1, dword [r15 + 0x395c]
vmovss dword [rbx + 0xb4], xmm1
vmovss dword [rbx + 0xb8], xmm3
vaddss xmm1, xmm1, dword [rbx + 0x70]
vmovss dword [rbx + 0x70], xmm1
vaddss xmm0, xmm0, xmm3
vmovss dword [rbx + 0x74], xmm0
cmp dword [rsp + 0x50], 0x3000000
sete al
lea rcx, [r12 + 0x248]
or r13b, al
lea rax, [rsp + 0x170]
cmove rax, rcx
vmovups xmm0, xmmword [rax]
vmovaps xmmword [rsp + 0x160], xmm0
vmovsd xmm2, qword [rbx + 0x28]
vmovsd xmm0, qword [rbx + 0x30]
vaddps xmm3, xmm0, xmm2
vxorps xmm8, xmm8, xmm8
test byte [rbx + 0x14], 1
vxorps xmm5, xmm5, xmm5
jne 0x14001fdf7
mov rax, qword [rbx]
vmovss xmm4, dword [rbx + 0x2a0]
vmulss xmm4, xmm4, dword [rax + 0x3d3c]
mov rcx, qword [rbx + 0x378]
test rcx, rcx
je 0x14001fde6
vmulss xmm4, xmm4, dword [rcx + 0x2a0]
vmovss xmm5, dword [rax + 0x3928]
vfmadd132ss xmm5, xmm4, dword [0x14006aaf8]
mov rax, qword [rbx + 0x28]
vmovss xmm4, dword [rbx + 0x38]
vinsertps xmm4, xmm4, xmm5, 0x10
mov qword [rsp + 0x150], rax
vaddps xmm4, xmm4, xmm2
vmovlps qword [rsp + 0x158], xmm4
vmovddup xmm5, qword [rsp + 0x160]
vmaxps xmm4, xmm2, xmm5
vmovlps qword [rbx + 0x1f8], xmm4
vmovsd xmm4, qword [rsp + 0x168]
vminps xmm4, xmm3, xmm4
vmovlps qword [rbx + 0x200], xmm4
vmovd xmm4, eax
vaddss xmm6, xmm0, xmm4
vmovsd xmm7, qword [rbx + 0x68]
vblendps xmm2, xmm2, xmm4, 1
vaddps xmm9, xmm7, xmm2
vmovsd xmm4, qword [rbx + 0x70]
vblendps xmm3, xmm3, xmm6, 1
vsubps xmm10, xmm3, xmm4
vmovlhps xmm6, xmm9, xmm10
vmovups xmmword [rbx + 0x208], xmm6
mov eax, esi
and eax, 0x401
lea rcx, [r15 + 0x3930]
lea rdx, [rbx + 0x64]
cmp eax, 1
cmove rcx, rdx
vmovss xmm4, dword [rbx + 0x58]
vmovss xmm7, dword [rbx + 0x64]
vmulss xmm1, xmm4, dword [0x1400690ac]
vroundss xmm1, xmm1, xmm1, 0xb
vmaxss xmm1, xmm1, xmm7
vbroadcastss xmm3, dword [0x1400690ac]
vinsertps xmm2, xmm1, dword [rcx], 0x10
vmovaps xmmword [rsp + 0x80], xmm3
vaddps xmm6, xmm6, xmm3
vmovddup xmm1, xmm1
vinsertps xmm1, xmm1, xmm7, 0x30
vaddps xmm2, xmm6, xmm2
vsubps xmm1, xmm6, xmm1
vblendps xmm1, xmm1, xmm2, 3
vroundps xmm1, xmm1, 0xb
vmovddup xmm2, qword [rsp + 0x168]
vcmpltps xmm6, xmm1, xmm5
vminps xmm1, xmm2, xmm1
vblendvps xmm1, xmm1, xmm5, xmm6
lea rbp, [rsp + 0x168]
vmovups xmmword [rbx + 0x218], xmm1
vucomiss xmm0, xmm8
jbe 0x14001ff30
mov eax, esi
and eax, 0x2000000
jne 0x14001ff30
mov eax, esi
and eax, 0x40
jne 0x14001ff30
vmulss xmm0, xmm0, dword [0x14006ac88]
jmp 0x14001ff41
vmovss xmm0, dword [r15 + 0x3d38]
vmulss xmm0, xmm0, dword [0x14006ac8c]
vroundss xmm0, xmm0, xmm0, 0xb
vmovss dword [rbx + 0x278], xmm0
vinsertps xmm0, xmm4, dword [rbx + 0x5c], 0x10
vmovsd xmm1, qword [rbx + 0x40]
vbroadcastss xmm2, dword [0x14006aaf8]
vfmadd213ps xmm2, xmm0, xmm1
vsubps xmm0, xmm2, xmm10
vaddps xmm0, xmm9, xmm0
vxorps xmm6, xmm6, xmm6
vmaxps xmm0, xmm0, xmm6
vmovlps qword [rbx + 0x94], xmm0
lea rcx, [rsp + 0x210]
mov rdx, rbx
call fcn.140026ce0
mov rax, qword [rsp + 0x210]
mov qword [rbx + 0x8c], rax
movabs rax, 0x7f7fffff7f7fffff
mov qword [rbx + 0x9c], rax
vmovlps qword [rbx + 0x78], xmm6
mov rcx, qword [rbx + 0x2a8]
mov rax, qword [r15 + 0x3d30]
mov rax, qword [rax + 0x40]
mov rdx, qword [rax + 8]
call fcn.1400319a0
mov rax, qword [0x1400c1650]
mov rcx, qword [rax + 0x4000]
mov byte [rcx + 0xc0], 1
mov rsi, qword [rax + 0x4000]
mov rcx, qword [rsi + 0x2a8]
xor ebx, ebx
lea rdx, [rsp + 0x160]
mov r8, rbp
xor r9d, r9d
call fcn.1400317e0
mov rax, qword [rsi + 0x2a8]
mov rcx, qword [rax + 0x60]
movsxd rax, dword [rax + 0x58]
shl rax, 4
vmovups xmm0, xmmword [rax + rcx - 0x10]
vmovups xmmword [rsi + 0x248], xmm0
test r13b, r13b
jne 0x1400200e2
mov eax, dword [r12 + 0x1a0]
cmp eax, 2
jl 0x1400200a2
add eax, 0xfffffffe
mov rcx, qword [r12 + 0x1a8]
mov rdx, qword [rcx + rax*8]
test rdx, rdx
je 0x1400200a2
vmovss xmm0, dword [rdx + 0x2c]
vaddss xmm2, xmm0, dword [rdx + 0x34]
mov rcx, qword [rsp + 0x1f0]
vmovss xmm1, dword [rcx + 0x2c]
xor eax, eax
vucomiss xmm2, xmm1
jbe 0x1400200a4
vaddss xmm1, xmm1, dword [rcx + 0x34]
vucomiss xmm1, xmm0
jbe 0x1400200a4
vmovss xmm0, dword [rdx + 0x28]
vaddss xmm2, xmm0, dword [rdx + 0x30]
vmovss xmm1, dword [rcx + 0x28]
vucomiss xmm1, xmm2
jae 0x1400200a4
vaddss xmm1, xmm1, dword [rcx + 0x30]
vucomiss xmm1, xmm0
seta al
jmp 0x1400200a4
xor eax, eax
mov rcx, qword [rsp + 0x1f0]
mov rdx, qword [rcx + 0x2a8]
mov rbp, qword [rdx + 8]
movsxd rdx, dword [rdx]
imul rdx, rdx, 0x38
xor ebx, ebx
cmp dword [rdx + rbp - 0x18], 0
jne 0x1400200e2
mov rdx, qword [r12 + 0x2a8]
cmp dword [rdx + 0x20], 0
je 0x1400200e2
test al, al
jne 0x1400200e2
mov qword [rcx + 0x2a8], rdx
mov bl, 1
mov rax, qword [r15 + 0x4d10]
test rax, rax
jne 0x1400200f5
mov rax, qword [r15 + 0x4b18]
mov r12b, 1
test dil, 1
jne 0x140020122
test rax, rax
je 0x14002011f
mov rcx, qword [rsp + 0x1f0]
mov rcx, qword [rcx + 0x398]
cmp rcx, qword [rax + 0x398]
sete r12b
jmp 0x140020122
xor r12d, r12d
mov r13, qword [rsp + 0x1f0]
mov rdi, qword [0x1400c1650]
mov esi, dword [r13 + 0x14]
mov byte [r13 + 0xc3], 0
vmovss xmm13, dword [r13 + 0x60]
vmovss xmm12, dword [r13 + 0x64]
cmp byte [r13 + 0xc1], 0
je 0x14002026d
vmovss xmm6, dword [rdi + 0x3930]
vmovss dword [rdi + 0x3930], xmm12
mov eax, 0xc
test r12b, r12b
je 0x140020181
cmp byte [rdi + 0x4b7a], 1
mov eax, 0xc
sbb rax, 0
shl rax, 4
vmovss xmm0, dword [rdi + 0x38e8]
vmulss xmm0, xmm0, dword [rdi + rax + 0x39d8]
vmovss xmm1, dword [0x140069798]
vminss xmm2, xmm1, dword [rdi + rax + 0x39cc]
vxorps xmm3, xmm3, xmm3
vmaxss xmm2, xmm2, xmm3
vmovss xmm4, dword [0x1400690ac]
vmovss xmm5, dword [0x14006901c]
vfmadd213ss xmm2, xmm5, xmm4
vcvttss2si ecx, xmm2
vminss xmm1, xmm1, dword [rdi + rax + 0x39d0]
vmaxss xmm1, xmm1, xmm3
vfmadd213ss xmm1, xmm5, xmm4
vcvttss2si edx, xmm1
shl edx, 8
vmovss xmm1, dword [rdi + rax + 0x39d4]
vinsertps xmm0, xmm1, xmm0, 0x10
vbroadcastss xmm1, dword [0x140069798]
vminps xmm0, xmm0, xmm1
vxorps xmm1, xmm1, xmm1
vmaxps xmm0, xmm0, xmm1
vbroadcastss xmm1, dword [0x14006901c]
vfmadd213ps xmm1, xmm0, xmmword [rsp + 0x80]
vcvttps2dq xmm0, xmm1
vpsllvd xmm0, xmm0, xmmword [0x14006aac0]
or edx, ecx
vmovd eax, xmm0
vpextrd r8d, xmm0, 1
or eax, edx
or r8d, eax
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x158]
vmovss dword [rsp + 0x20], xmm13
mov r9b, 1
call fcn.140010620
vmovss dword [rdi + 0x3930], xmm6
mov edx, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x90]
jmp 0x140020cbc
test sil, 0x80
mov dword [rsp + 0x50], ebx
jne 0x140020344
xor ecx, ecx
test esi, 0x1000000
sete cl
xor rcx, 3
test esi, 0x6000000
mov eax, 4
cmove rax, rcx
shl rax, 4
vmovss xmm2, dword [0x140069798]
vminss xmm1, xmm2, dword [rdi + rax + 0x39cc]
vxorps xmm0, xmm0, xmm0
vmaxss xmm4, xmm1, xmm0
vmovss xmm3, dword [0x1400690ac]
vmovss xmm1, dword [0x14006901c]
vfmadd213ss xmm4, xmm1, xmm3
vcvttss2si edx, xmm4
vmovsd xmm4, qword [rdi + rax + 0x39d0]
vbroadcastss xmm5, dword [0x140069798]
vminps xmm4, xmm4, xmm5
vxorps xmm5, xmm5, xmm5
vmaxps xmm4, xmm4, xmm5
vbroadcastss xmm5, dword [0x14006901c]
vfmadd213ps xmm5, xmm4, xmmword [rsp + 0x80]
vcvttps2dq xmm4, xmm5
vpsllvd xmm4, xmm4, xmmword [0x14006ac90]
vmovd ebp, xmm4
vpextrd ecx, xmm4, 1
or ebp, edx
or ecx, ebp
test byte [rdi + 0x4a00], 0x40
jne 0x140020356
vmovss xmm4, dword [rdi + 0x38e8]
vmulss xmm4, xmm4, dword [rdi + rax + 0x39d8]
vminss xmm2, xmm4, xmm2
vmaxss xmm2, xmm2, xmm0
vfmadd213ss xmm1, xmm2, xmm3
jmp 0x140020379
mov ebp, esi
and ebp, 1
test ebp, ebp
jne 0x14002051e
jmp 0x140020434
vmovss xmm2, dword [rdi + 0x4a60]
vminss xmm2, xmm2, dword [0x140069798]
and ecx, 0xffffff
vmaxss xmm2, xmm2, xmm0
vfmadd213ss xmm1, xmm2, dword [0x1400690ac]
vcvttss2si r9d, xmm1
shl r9d, 0x18
or r9d, ecx
mov rcx, qword [r13 + 0x2a8]
xor edx, edx
mov ebp, esi
and ebp, 1
mov eax, 0xc0
cmovne eax, edx
vmovsd xmm1, qword [r13 + 0x28]
vmovsd xmm2, qword [r13 + 0x30]
vaddps xmm2, xmm2, xmm1
vmovlps qword [rsp + 0x210], xmm2
test sil, 1
jne 0x1400203f3
mov rdx, qword [r13]
vmovss xmm0, dword [r13 + 0x2a0]
vmulss xmm2, xmm0, dword [rdx + 0x3d3c]
mov rbx, qword [r13 + 0x378]
test rbx, rbx
je 0x1400203e2
vmulss xmm2, xmm2, dword [rbx + 0x2a0]
vmovss xmm0, dword [rdx + 0x3928]
vfmadd132ss xmm0, xmm2, dword [0x14006aaf8]
vmovshdup xmm2, xmm1
vaddss xmm0, xmm0, xmm2
vmovss dword [rsp + 0x200], xmm1
vmovss dword [rsp + 0x204], xmm0
mov dword [rsp + 0x28], eax
vmovss dword [rsp + 0x20], xmm13
lea rdx, [rsp + 0x200]
lea r8, [rsp + 0x210]
call fcn.140034090
test ebp, ebp
jne 0x14002051e
mov rax, qword [0x1400c1650]
movzx ecx, r12b
shl rcx, 4
vmovss xmm0, dword [rax + 0x38e8]
vmulss xmm0, xmm0, dword [rcx + rax + 0x3a78]
vmovss xmm1, dword [0x140069798]
vminss xmm2, xmm1, dword [rcx + rax + 0x3a6c]
vxorps xmm3, xmm3, xmm3
vmaxss xmm2, xmm2, xmm3
vmovss xmm4, dword [0x1400690ac]
vmovss xmm5, dword [0x14006901c]
vfmadd213ss xmm2, xmm5, xmm4
vcvttss2si edx, xmm2
vminss xmm1, xmm1, dword [rcx + rax + 0x3a70]
vmaxss xmm1, xmm1, xmm3
vfmadd213ss xmm1, xmm5, xmm4
vcvttss2si ebx, xmm1
lea r8, [rsp + 0x158]
shl ebx, 8
or ebx, edx
vmovss xmm1, dword [rcx + rax + 0x3a74]
vinsertps xmm0, xmm1, xmm0, 0x10
vbroadcastss xmm1, dword [0x140069798]
vminps xmm0, xmm0, xmm1
vxorps xmm1, xmm1, xmm1
vmaxps xmm0, xmm0, xmm1
vbroadcastss xmm1, dword [0x14006901c]
vfmadd213ps xmm1, xmm0, xmmword [rsp + 0x80]
vcvttps2dq xmm0, xmm1
vpsllvd xmm0, xmm0, xmmword [0x14006aac0]
vmovd eax, xmm0
or eax, ebx
vpextrd r9d, xmm0, 1
or r9d, eax
mov rcx, qword [r13 + 0x2a8]
vmovss dword [rsp + 0x20], xmm13
mov dword [rsp + 0x28], 0x30
lea rdx, [rsp + 0x150]
call fcn.140034090
test esi, 0x400
mov ebx, dword [rsp + 0x70]
je 0x14002083b
mov eax, dword [r13 + 0x14]
vxorps xmm1, xmm1, xmm1
vpxor xmm0, xmm0, xmm0
test al, 1
jne 0x140020578
mov rcx, qword [r13]
vmovss xmm0, dword [r13 + 0x2a0]
vmulss xmm2, xmm0, dword [rcx + 0x3d3c]
mov rdx, qword [r13 + 0x378]
test rdx, rdx
je 0x140020567
vmulss xmm2, xmm2, dword [rdx + 0x2a0]
vmovss xmm0, dword [rcx + 0x3928]
vfmadd132ss xmm0, xmm2, dword [0x14006aaf8]
vmovss xmm2, dword [r13 + 0x2c]
test eax, 0x400
je 0x1400205cc
mov rax, qword [r13]
vmovss xmm1, dword [r13 + 0x178]
vmovss xmm3, dword [r13 + 0x2a0]
vmulss xmm3, xmm3, dword [rax + 0x3d3c]
mov rcx, qword [r13 + 0x378]
test rcx, rcx
je 0x1400205b7
vmulss xmm3, xmm3, dword [rcx + 0x2a0]
vaddss xmm3, xmm3, xmm1
vmovss xmm1, dword [rax + 0x3928]
vfmadd132ss xmm1, xmm3, dword [0x14006aaf8]
vmovaps xmm6, xmm15
vmovaps xmm15, xmm14
vaddss xmm3, xmm0, xmm2
vmovss xmm8, dword [r13 + 0x28]
vmaxss xmm0, xmm3, xmm2
vmovss xmm4, dword [r13 + 0x38]
vinsertps xmm1, xmm4, xmm1, 0x10
vinsertps xmm3, xmm8, xmm3, 0x10
vaddps xmm1, xmm1, xmm3
vmovsd xmm3, qword [r13 + 0x30]
vinsertps xmm2, xmm8, xmm2, 0x10
vaddps xmm2, xmm3, xmm2
vminps xmm11, xmm1, xmm2
vmovshdup xmm10, xmm11
mov rcx, qword [r13 + 0x2a8]
vxorps xmm14, xmm14, xmm14
vxorps xmm1, xmm1, xmm1
test ebp, ebp
je 0x14002062a
vmovaps xmm1, xmm13
mov rax, qword [0x1400c1650]
vmovss xmm2, dword [rax + 0x38e8]
vmulss xmm2, xmm2, dword [rax + 0x3aa8]
vmovss xmm4, dword [0x140069798]
vminss xmm3, xmm4, dword [rax + 0x3a9c]
vmaxss xmm3, xmm14, xmm3
vmovss xmm5, dword [0x1400690ac]
vmovss xmm7, dword [0x14006901c]
vfmadd213ss xmm3, xmm7, xmm5
vcvttss2si edx, xmm3
vminss xmm3, xmm4, dword [rax + 0x3aa0]
vmaxss xmm3, xmm14, xmm3
vfmadd213ss xmm3, xmm7, xmm5
vcvttss2si ebp, xmm3
shl ebp, 8
vmovss xmm3, dword [rax + 0x3aa4]
vinsertps xmm2, xmm3, xmm2, 0x10
vbroadcastss xmm9, dword [0x140069798]
vminps xmm2, xmm9, xmm2
vxorps xmm3, xmm3, xmm3
vmaxps xmm2, xmm2, xmm3
vbroadcastss xmm7, dword [0x14006901c]
vfmadd213ps xmm2, xmm7, xmmword [rsp + 0x80]
vcvttps2dq xmm2, xmm2
vpsllvd xmm2, xmm2, xmmword [0x14006aac0]
or ebp, edx
vmovd eax, xmm2
vpextrd r9d, xmm2, 1
or eax, ebp
or r9d, eax
vsubss xmm2, xmm11, xmm12
vmovss dword [rsp + 0x210], xmm2
vmovss dword [rsp + 0x214], xmm10
vaddss xmm2, xmm8, xmm12
vmovss dword [rsp + 0x200], xmm2
vmovss dword [rsp + 0x204], xmm0
vmovss dword [rsp + 0x20], xmm1
mov dword [rsp + 0x28], 0x30
lea rdx, [rsp + 0x200]
lea r8, [rsp + 0x210]
call fcn.140034090
vmovss xmm0, dword [rdi + 0x3930]
vucomiss xmm14, xmm0
vmovaps xmm14, xmm15
vmovaps xmm15, xmm6
jae 0x14002083b
vmovss xmm1, dword [r13 + 0x34]
vaddss xmm1, xmm1, dword [r13 + 0x2c]
vucomiss xmm10, xmm1
jae 0x14002083b
mov rax, qword [0x1400c1650]
vmovss xmm1, dword [rax + 0x38e8]
vmulss xmm1, xmm1, dword [rax + 0x3a28]
vmovss xmm4, dword [0x140069798]
vminss xmm2, xmm4, dword [rax + 0x3a1c]
vxorps xmm3, xmm3, xmm3
vmaxss xmm2, xmm2, xmm3
vmovss xmm5, dword [0x1400690ac]
vmovss xmm6, dword [0x14006901c]
vfmadd213ss xmm2, xmm6, xmm5
vcvttss2si edx, xmm2
vminss xmm2, xmm4, dword [rax + 0x3a20]
vmaxss xmm2, xmm2, xmm3
vfmadd213ss xmm2, xmm6, xmm5
vcvttss2si ebp, xmm2
mov rcx, qword [r13 + 0x2a8]
shl ebp, 8
or ebp, edx
vmovss xmm2, dword [rax + 0x3a24]
vinsertps xmm1, xmm2, xmm1, 0x10
vminps xmm1, xmm9, xmm1
vxorps xmm2, xmm2, xmm2
vmaxps xmm1, xmm1, xmm2
vfmadd213ps xmm7, xmm1, xmmword [rsp + 0x80]
vcvttps2dq xmm1, xmm7
vpsllvd xmm1, xmm1, xmmword [0x14006aac0]
vmovd eax, xmm1
or eax, ebp
vpextrd r9d, xmm1, 1
or r9d, eax
vmovlps qword [rsp + 0x210], xmm11
vmovss dword [rsp + 0x200], xmm8
vmovss dword [rsp + 0x204], xmm10
vmovss dword [rsp + 0x20], xmm0
lea rdx, [rsp + 0x200]
lea r8, [rsp + 0x210]
call fcn.140033df0
cmp byte [r13 + 0xbc], 0
je 0x14002084c
xor ecx, ecx
call fcn.140049500
cmp byte [r13 + 0xbd], 0
je 0x140020860
mov ecx, 1
call fcn.140049500
test ebx, ebx
je 0x1400209b7
and esi, 2
jne 0x1400209b7
vfmadd231ss xmm14, xmm15, dword [0x14006ac20]
vmulss xmm0, xmm15, dword [0x14006ac24]
vmaxss xmm0, xmm14, xmm0
vroundss xmm0, xmm0, xmm0, 0xb
vaddss xmm1, xmm12, xmm13
mov ebx, ebx
vinsertps xmm8, xmm0, xmm12, 0x10
vinsertps xmm9, xmm12, xmm0, 0x10
vbroadcastss xmm10, xmm1
lea rbp, [0x14006a6a4]
xor r14d, r14d
lea r12, [rsp + 0x210]
jmp 0x1400208d0
inc r14
add rbp, 0x18
cmp rbx, r14
je 0x1400209b7
mov edi, dword [rsp + r14*4 + 0x240]
cmp edi, 0x1000000
jb 0x1400208c0
mov rcx, qword [r13 + 0x2a8]
test r14b, 1
sete al
vmovsd xmm0, qword [r13 + 0x28]
vmovsd xmm1, qword [r13 + 0x30]
vmovsd xmm6, qword [rbp - 0x14]
vfmadd213ps xmm6, xmm1, xmm0
vmovsd xmm11, qword [rbp - 0xc]
vmovd xmm0, eax
vpbroadcastb xmm0, xmm0
vpslld xmm0, xmm0, 0x1f
vblendvps xmm7, xmm9, xmm8, xmm0
vmovaps xmm0, xmm7
vfmadd213ps xmm0, xmm11, xmm6
vmovlps qword [rsp + 0x210], xmm0
add rcx, 0x78
mov rdx, r12
call fcn.140013f90
mov rcx, qword [r13 + 0x2a8]
vpermilps xmm0, xmm7, 0xe1
vfmadd213ps xmm0, xmm11, xmm6
vmovlps qword [rsp + 0x210], xmm0
add rcx, 0x78
mov rdx, r12
call fcn.140013f90
mov rcx, qword [r13 + 0x2a8]
mov r9d, dword [rbp - 4]
mov eax, dword [rbp]
vfmadd231ps xmm6, xmm10, xmm11
vmovlps qword [rsp + 0x210], xmm6
mov dword [rsp + 0x20], eax
mov rdx, r12
vmovaps xmm2, xmm13
call fcn.140033340
mov rsi, qword [r13 + 0x2a8]
mov r8d, dword [rsi + 0x78]
mov rdx, qword [rsi + 0x80]
mov rcx, rsi
mov r9d, edi
call fcn.140032830
mov dword [rsi + 0x78], 0
jmp 0x1400208c0
mov rsi, qword [0x1400c1650]
vmovss xmm0, dword [rsi + 0x38e8]
vmulss xmm1, xmm0, dword [rsi + 0x3a28]
vmovss xmm10, dword [0x140069798]
vminss xmm2, xmm10, dword [rsi + 0x3a1c]
vxorps xmm0, xmm0, xmm0
vmaxss xmm2, xmm2, xmm0
vmovss xmm6, dword [0x1400690ac]
vmovss xmm7, dword [0x14006901c]
vfmadd213ss xmm2, xmm7, xmm6
vcvttss2si eax, xmm2
vminss xmm2, xmm10, dword [rsi + 0x3a20]
vmaxss xmm2, xmm2, xmm0
vfmadd213ss xmm2, xmm7, xmm6
vcvttss2si ecx, xmm2
shl ecx, 8
or ecx, eax
vminss xmm2, xmm10, dword [rsi + 0x3a24]
vmaxss xmm2, xmm2, xmm0
vfmadd213ss xmm2, xmm7, xmm6
vcvttss2si eax, xmm2
vmovss xmm8, dword [r13 + 0x64]
shl eax, 0x10
or eax, ecx
vminss xmm1, xmm10, xmm1
vmaxss xmm1, xmm1, xmm0
vfmadd213ss xmm1, xmm7, xmm6
vcvttss2si ebp, xmm1
shl ebp, 0x18
or ebp, eax
vucomiss xmm0, xmm8
mov r14, qword [rsp + 0xc8]
mov r12, qword [rsp + 0x90]
jae 0x140020af9
test byte [r13 + 0x14], 0x80
jne 0x140020ac1
mov rcx, qword [r13 + 0x2a8]
vmovss xmm0, dword [r13 + 0x60]
lea rdx, [r13 + 0x28]
vmovsd xmm1, qword [r13 + 0x28]
vmovsd xmm2, qword [r13 + 0x30]
vaddps xmm1, xmm2, xmm1
vmovlps qword [rsp + 0x210], xmm1
vmovss dword [rsp + 0x30], xmm8
vmovss dword [rsp + 0x20], xmm0
mov dword [rsp + 0x28], 0
lea r8, [rsp + 0x210]
mov r9d, ebp
call fcn.140033fa0
jmp 0x140020af9
mov eax, dword [r13 + 0x18]
test al, 4
je 0x140020ae1
mov rcx, r13
mov edx, 1
mov r8d, ebp
vmovaps xmm3, xmm8
call fcn.14002d630
mov eax, dword [r13 + 0x18]
test al, 8
je 0x140020af9
mov rcx, r13
mov edx, 3
mov r8d, ebp
vmovaps xmm3, xmm8
call fcn.14002d630
movzx ecx, byte [r13 + 0xc9]
movzx edx, byte [r13 + 0xca]
cmp cl, 0xff
jne 0x140020b17
cmp dl, 0xff
je 0x140020be5
xor eax, eax
cmp dl, 0xff
setne al
movzx ecx, cl
movzx edx, dl
cmove edx, ecx
mov rcx, qword [0x1400c1650]
shl rax, 4
vmovss xmm0, dword [rcx + 0x38e8]
vmulss xmm0, xmm0, dword [rax + rcx + 0x3b98]
vminss xmm1, xmm10, dword [rax + rcx + 0x3b8c]
vxorps xmm2, xmm2, xmm2
vmaxss xmm1, xmm1, xmm2
vfmadd213ss xmm1, xmm7, xmm6
vcvttss2si ebx, xmm1
movsx edx, dl
vminss xmm1, xmm10, dword [rax + rcx + 0x3b90]
vmaxss xmm1, xmm1, xmm2
vfmadd213ss xmm1, xmm7, xmm6
vcvttss2si edi, xmm1
shl edi, 8
or edi, ebx
vmovss xmm1, dword [rax + rcx + 0x3b94]
vinsertps xmm0, xmm1, xmm0, 0x10
vbroadcastss xmm1, dword [0x140069798]
vminps xmm0, xmm0, xmm1
vxorps xmm1, xmm1, xmm1
vmaxps xmm0, xmm0, xmm1
vbroadcastss xmm1, dword [0x14006901c]
vfmadd213ps xmm1, xmm0, xmmword [rsp + 0x80]
vcvttps2dq xmm0, xmm1
vpsllvd xmm0, xmm0, xmmword [0x14006aac0]
vmovd eax, xmm0
or eax, edi
vpextrd r8d, xmm0, 1
or r8d, eax
vmovss xmm0, dword [r13 + 0x64]
vmaxss xmm3, xmm0, dword [0x14006aaf8]
mov rcx, r13
call fcn.14002d630
vmovss xmm0, dword [rsi + 0x3930]
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm0
mov edx, dword [rsp + 0x4c]
mov ebx, dword [rsp + 0x50]
jae 0x140020cbc
test byte [r13 + 0x14], 1
jne 0x140020cbc
vmovss xmm1, dword [r13 + 0x2c]
mov rax, qword [r13]
vmovss xmm2, dword [r13 + 0x2a0]
vmulss xmm2, xmm2, dword [rax + 0x3d3c]
mov rcx, qword [r13 + 0x378]
test rcx, rcx
je 0x140020c3d
vmulss xmm2, xmm2, dword [rcx + 0x2a0]
vmovss xmm3, dword [rax + 0x3928]
vaddss xmm1, xmm1, dword [0x140069974]
vaddss xmm1, xmm1, xmm2
vfmadd231ss xmm1, xmm3, dword [0x14006aaf8]
mov rcx, qword [r13 + 0x2a8]
vmovss xmm2, dword [r13 + 0x28]
vsubss xmm3, xmm2, xmm8
vaddss xmm3, xmm3, dword [r13 + 0x30]
vmovss dword [rsp + 0x210], xmm3
vmovss dword [rsp + 0x214], xmm1
vaddss xmm2, xmm8, xmm2
vmovss dword [rsp + 0x200], xmm2
vmovss dword [rsp + 0x204], xmm1
vmovss dword [rsp + 0x20], xmm0
lea rdx, [rsp + 0x200]
lea r8, [rsp + 0x210]
mov r9d, ebp
call fcn.140033df0
mov edx, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0x1f0]
test bl, bl
je 0x140020cd6
lea rax, [rcx + 0x2b0]
mov qword [rcx + 0x2a8], rax
vmovss xmm12, dword [rcx + 0x50]
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm12
vmovaps xmm4, xmm12
mov r13d, dword [rsp + 0x64]
jne 0x140020d26
mov eax, edx
and eax, 0x808
vmovss xmm0, dword [rcx + 0x30]
vmovss xmm2, dword [rcx + 0x58]
vmovss xmm3, dword [rcx + 0x68]
vaddss xmm2, xmm2, xmm2
vsubss xmm0, xmm0, xmm2
vaddss xmm2, xmm3, dword [rcx + 0x70]
vsubss xmm0, xmm0, xmm2
cmp eax, 0x800
jne 0x140020d22
vmovss xmm1, dword [rcx + 0x40]
vmaxss xmm4, xmm1, xmm0
vmovss xmm13, dword [rcx + 0x54]
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm13
je 0x140020d46
vmovss xmm10, dword [rcx + 0x5c]
vmovss xmm9, dword [rcx + 0x6c]
vmovaps xmm0, xmm13
jmp 0x140020d75
vmovss xmm0, dword [rcx + 0x34]
vmovss xmm10, dword [rcx + 0x5c]
vmovss xmm9, dword [rcx + 0x6c]
vaddss xmm3, xmm10, xmm10
vsubss xmm0, xmm0, xmm3
vaddss xmm3, xmm9, dword [rcx + 0x74]
vsubss xmm0, xmm0, xmm3
test dl, 8
jne 0x140020d71
vmovss xmm1, dword [rcx + 0x44]
vmaxss xmm0, xmm1, xmm0
vinsertps xmm0, xmm4, xmm0, 0x10
vxorps xmm8, xmm8, xmm8
vucomiss xmm12, xmm8
vmovss xmm3, dword [rcx + 0x58]
vmovsd xmm4, qword [rcx + 0x8c]
vmovshdup xmm5, xmm4
vmovsd xmm1, qword [rcx + 0x208]
vinsertps xmm11, xmm3, xmm10, 0x10
vbroadcastss xmm6, dword [rcx + 0x64]
vmaxps xmm6, xmm11, xmm6
vsubps xmm1, xmm1, xmm4
vaddps xmm1, xmm1, xmm6
vroundps xmm1, xmm1, 0xb
vaddps xmm0, xmm0, xmm1
vmovlhps xmm0, xmm1, xmm0
vmovups xmmword [rcx + 0x228], xmm0
vmovups xmm0, xmmword [rcx + 0x228]
vmovups xmmword [rcx + 0x238], xmm0
vmovss xmm6, dword [rcx + 0x68]
vaddss xmm0, xmm6, xmm3
vsubss xmm1, xmm0, xmm4
vmovsd xmm7, qword [rcx + 0x28]
vmovshdup xmm2, xmm7
vaddss xmm0, xmm1, xmm7
vmovss dword [rcx + 0x258], xmm0
vsubss xmm5, xmm10, xmm5
vaddss xmm2, xmm9, xmm2
vaddss xmm5, xmm5, xmm2
vmovss dword [rcx + 0x25c], xmm5
jne 0x140020e2a
vmovss xmm2, dword [rcx + 0x30]
vaddss xmm3, xmm3, xmm3
vsubss xmm2, xmm2, xmm3
vaddss xmm3, xmm6, dword [rcx + 0x70]
vsubss xmm12, xmm2, xmm3
vucomiss xmm13, xmm8
vaddss xmm0, xmm12, xmm0
vmovss dword [rcx + 0x260], xmm0
jne 0x140020e54
vmovss xmm0, dword [rcx + 0x34]
vaddss xmm2, xmm10, xmm10
vsubss xmm0, xmm0, xmm2
vaddss xmm2, xmm9, dword [rcx + 0x74]
vsubss xmm13, xmm0, xmm2
vaddss xmm0, xmm13, xmm5
vmovss dword [rcx + 0x264], xmm0
vmovss dword [rcx + 0x154], xmm1
vcvtps2pd xmm0, xmm7
vcvtps2pd xmm1, xmm11
vcvtps2pd xmm2, xmm4
vsubpd xmm1, xmm1, xmm2
vinsertps xmm2, xmm6, xmm9, 0x10
vcvtps2pd xmm2, xmm2
vaddpd xmm0, xmm0, xmm2
vaddpd xmm0, xmm1, xmm0
vcvtpd2ps xmm1, xmm0
vxorpd xmm2, xmm2, xmm2
vcvtps2pd xmm3, xmm1
vsubpd xmm0, xmm0, xmm3
vcvtpd2ps xmm0, xmm0
vunpcklpd xmm0, xmm2, xmm0
vmovupd xmmword [rcx + 0x158], xmm0
vmovlpd qword [rcx + 0x120], xmm1
mov rax, qword [rcx + 0x120]
mov qword [rcx + 0x110], rax
mov qword [rcx + 0x118], rax
mov qword [rcx + 0x128], rax
mov qword [rcx + 0x130], rax
mov dword [rcx + 0x168], 0
vmovupd xmmword [rcx + 0x138], xmm2
vmovupd xmmword [rcx + 0x142], xmm2
movzx eax, word [rcx + 0x16e]
mov word [rcx + 0x16c], ax
mov dword [rcx + 0x16e], 0x10000
vxorpd xmm0, xmm0, xmm0
vucomiss xmm0, dword [rcx + 0x98]
setb byte [rcx + 0x172]
mov byte [rcx + 0x173], 0
add rcx, 0x17c
vmovss xmm1, dword [r15 + 0x3934]
mov r8d, dword [rsp + 0x60]
call fcn.1400594f0
mov rcx, qword [rsp + 0x1f0]
mov qword [rcx + 0x198], 0
add rcx, 0x1a0
xor edx, edx
call fcn.140023d40
mov rcx, qword [rsp + 0x1f0]
lea rax, [rcx + 0x280]
mov qword [rcx + 0x1b0], rax
mov qword [rcx + 0x1b8], 0
mov dword [rcx + 0x1c4], 1
test r12, r12
je 0x140020f97
mov eax, dword [r12 + 0x1c4]
jmp 0x140020f9c
mov eax, 1
mov dword [rcx + 0x1c8], eax
vmovss xmm0, dword [rcx + 0x278]
vmovss dword [rcx + 0x1d0], xmm0
mov dword [rcx + 0x1d4], 0xbf800000
add rcx, 0x1d8
xor edx, edx
call fcn.14001d340
mov ecx, 0x1e8
add rcx, qword [rsp + 0x1f0]
xor edx, edx
call fcn.14001d340
mov ebp, dword [rsp + 0x4c]
test ebp, 0x8000000
jne 0x140020ff7
mov rcx, qword [rsp + 0x1f0]
jmp 0x14002108b
mov rax, qword [0x1400c1650]
vmovss xmm0, dword [0x140069798]
vminss xmm1, xmm0, dword [rax + 0x3d0c]
vxorpd xmm2, xmm2, xmm2
vmaxss xmm1, xmm1, xmm2
vmovss xmm3, dword [0x1400690ac]
vmovss xmm4, dword [0x14006901c]
vfmadd213ss xmm1, xmm4, xmm3
vcvttss2si ecx, xmm1
vminss xmm1, xmm0, dword [rax + 0x3d10]
vmaxss xmm1, xmm1, xmm2
vfmadd213ss xmm1, xmm4, xmm3
vcvttss2si edx, xmm1
shl edx, 8
or edx, ecx
vminss xmm1, xmm0, dword [rax + 0x3d14]
vmaxss xmm1, xmm1, xmm2
vfmadd213ss xmm1, xmm4, xmm3
vcvttss2si ecx, xmm1
shl ecx, 0x10
vminss xmm0, xmm0, dword [rax + 0x3d18]
vmaxss xmm0, xmm0, xmm2
vfmadd213ss xmm0, xmm4, xmm3
vcvttss2si eax, xmm0
shl eax, 0x18
or eax, ecx
or eax, edx
mov rcx, qword [rsp + 0x1f0]
mov dword [rcx + 0x1cc], eax
movzx eax, byte [rcx + 0xdc]
test al, al
jle 0x14002109e
dec al
mov byte [rcx + 0xdc], al
movzx eax, byte [rcx + 0xdd]
test al, al
jle 0x1400210b1
dec al
mov byte [rcx + 0xdd], al
test byte [rsp + 0x78], 1
je 0x1400210e2
mov edx, 2
call fcn.140017710
mov ebp, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0x1f0]
cmp rcx, qword [r15 + 0x4b18]
jne 0x1400210e2
xor edx, edx
call fcn.140025160
mov ebp, dword [rsp + 0x4c]
test bpl, 1
jne 0x140021795
vmovss xmm0, dword [rsp + 0x158]
mov r13, qword [rsp + 0x1f0]
vmovss xmm1, dword [r13 + 0x64]
mov r12, qword [0x1400c1650]
mov esi, dword [r13 + 0x14]
test sil, 0x20
jne 0x140021122
cmp dword [r12 + 0x3910], 0xffffffff
setne al
jmp 0x140021124
xor eax, eax
vmovss xmm8, dword [rsp + 0x15c]
vmovss xmm11, dword [rsp + 0x154]
vsubss xmm12, xmm0, xmm1
vaddss xmm10, xmm1, dword [rsp + 0x150]
mov r14d, dword [r12 + 0x4984]
mov ecx, r14d
or ecx, 0x10
mov dword [r12 + 0x4984], ecx
mov dword [r13 + 0x168], 1
vmovss xmm7, dword [r12 + 0x3924]
vmovss xmm13, dword [r12 + 0x3d38]
vxorps xmm0, xmm0, xmm0
vmovlps qword [rsp + 0x238], xmm0
vmovlps qword [rsp + 0x230], xmm0
vmovaps xmm6, xmm7
cmp qword [rsp + 0xc0], 0
je 0x1400211cb
vaddss xmm0, xmm11, dword [r12 + 0x3928]
vaddss xmm1, xmm13, xmm7
vsubss xmm2, xmm12, xmm1
vmovss dword [rsp + 0x238], xmm2
vmovss dword [rsp + 0x23c], xmm0
vaddss xmm6, xmm1, dword [r12 + 0x393c]
test al, al
je 0x1400212e2
mov eax, dword [r12 + 0x3910]
test eax, eax
mov dword [rsp + 0x50], esi
je 0x140021218
cmp eax, 1
jne 0x140021246
vaddss xmm0, xmm11, dword [r12 + 0x3928]
vaddss xmm1, xmm13, xmm6
vsubss xmm2, xmm12, xmm1
vmovss dword [rsp + 0x230], xmm2
vmovss dword [rsp + 0x234], xmm0
vaddss xmm6, xmm1, dword [r12 + 0x393c]
jmp 0x140021246
vaddss xmm0, xmm11, dword [r12 + 0x3928]
vaddss xmm1, xmm10, xmm7
vmovss dword [rsp + 0x230], xmm1
vmovss dword [rsp + 0x234], xmm0
vaddss xmm0, xmm13, xmm7
vaddss xmm7, xmm0, dword [r12 + 0x393c]
mov rax, qword [r13 + 0x108]
movsxd rcx, dword [r13 + 0x100]
mov edi, dword [rax + rcx*4 - 4]
not edi
mov dl, 0x23
lea rcx, [0x140075183]
lea rbp, [0x140069980]
mov ebx, edi
jmp 0x140021288
movzx edx, dl
movzx esi, bl
shr ebx, 8
xor esi, edx
xor ebx, dword [rbp + rsi*4]
inc rcx
mov edx, eax
test al, al
je 0x14002129f
movzx eax, byte [rcx - 1]
cmp dl, 0x23
jne 0x140021270
cmp al, 0x23
jne 0x140021270
cmp byte [rcx], 0x23
cmove ebx, edi
mov al, 0x23
jmp 0x140021270
not ebx
mov rax, qword [r13]
cmp dword [rax + 0x404c], ebx
jne 0x1400212c3
lea r8, str.COLLAPSE
mov ecx, ebx
mov edx, 0xb
xor r9d, r9d
call fcn.140016050
lea rdx, [rsp + 0x230]
mov ecx, ebx
call fcn.140049340
test al, al
mov esi, dword [rsp + 0x50]
je 0x1400212e2
mov byte [r13 + 0xc2], 1
cmp qword [rsp + 0xc0], 0
je 0x1400213a9
mov dword [rsp + 0x60], r14d
mov r14d, esi
mov rax, qword [r13 + 0x108]
movsxd rcx, dword [r13 + 0x100]
mov edi, dword [rax + rcx*4 - 4]
not edi
mov dl, 0x23
lea rcx, [0x14007518d]
lea rbp, [0x140069980]
mov ebx, edi
jmp 0x140021348
movzx edx, dl
movzx esi, bl
shr ebx, 8
xor esi, edx
xor ebx, dword [rbp + rsi*4]
inc rcx
mov edx, eax
test al, al
je 0x14002135f
movzx eax, byte [rcx - 1]
cmp dl, 0x23
jne 0x140021330
cmp al, 0x23
jne 0x140021330
cmp byte [rcx], 0x23
cmove ebx, edi
mov al, 0x23
jmp 0x140021330
not ebx
mov rax, qword [r13]
cmp dword [rax + 0x404c], ebx
jne 0x140021383
lea r8, str.CLOSE
mov ecx, ebx
mov edx, 0xb
xor r9d, r9d
call fcn.140016050
lea rdx, [rsp + 0x238]
mov ecx, ebx
call fcn.1400490d0
test al, al
mov esi, r14d
mov r14d, dword [rsp + 0x60]
je 0x1400213a9
mov rax, qword [rsp + 0xc0]
mov byte [rax], 0
mov dword [r13 + 0x168], 0
mov dword [r12 + 0x4984], r14d
vxorps xmm14, xmm14, xmm14
test esi, 0x40000
je 0x1400213d1
vmulss xmm14, xmm13, dword [0x14006aca0]
mov rax, qword [0x1400c1650]
mov rdx, qword [rsp + 0xb8]
cmp rdx, 0xffffffffffffffff
mov r14, qword [rsp + 0xc8]
jne 0x14002140f
vmovss xmm2, dword [rax + 0x3d38]
jmp 0x140021492
cmp byte [rdx + 1], 0x23
je 0x140021424
inc rdx
cmp rdx, 0xffffffffffffffff
je 0x14002141d
movzx ecx, byte [rdx]
cmp ecx, 0x23
je 0x140021400
test ecx, ecx
jne 0x140021406
jmp 0x140021424
mov rdx, 0xffffffffffffffff
vmovss xmm2, dword [rax + 0x3d38]
mov rbp, qword [rsp + 0xb8]
cmp rdx, rbp
je 0x140021492
mov rcx, qword [rax + 0x3d30]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x38], 0
mov dword [rsp + 0x20], 0xbf800000
lea rdx, [rsp + 0x210]
vmovss xmm3, dword [0x140069040]
call fcn.14003f700
vmovss xmm0, dword [rsp + 0x210]
vmovss xmm2, dword [rsp + 0x214]
vaddss xmm0, xmm0, dword [0x14006aae8]
vroundss xmm0, xmm0, xmm0, 0xb
jmp 0x140021496
vxorps xmm0, xmm0, xmm0
vaddss xmm0, xmm14, xmm0
vmovss dword [rsp + 0x228], xmm0
vmovss dword [rsp + 0x22c], xmm2
vmovss xmm1, dword [r12 + 0x3924]
vucomiss xmm7, xmm1
jbe 0x1400214c6
vaddss xmm7, xmm7, dword [r12 + 0x393c]
vucomiss xmm6, xmm1
jbe 0x1400214d6
vaddss xmm6, xmm6, dword [r12 + 0x393c]
vmovss xmm1, dword [r12 + 0x3908]
vxorps xmm2, xmm2, xmm2
vucomiss xmm2, xmm1
jae 0x14002154a
vucomiss xmm1, dword [0x140069798]
jae 0x14002154a
vaddss xmm2, xmm1, dword [0x1400697c0]
vbroadcastss xmm3, dword [0x1400690a8]
vandps xmm2, xmm2, xmm3
vmovss xmm3, dword [0x140069798]
vfmadd132ss xmm2, xmm3, dword [0x14006aca4]
vminss xmm2, xmm2, xmm3
vxorps xmm3, xmm3, xmm3
vmaxss xmm2, xmm2, xmm3
vaddss xmm3, xmm10, xmm0
vaddss xmm3, xmm3, xmm7
vaddss xmm3, xmm3, xmm6
vsubss xmm3, xmm12, xmm3
vmaxss xmm4, xmm7, xmm6
vminss xmm3, xmm4, xmm3
vmulss xmm2, xmm2, xmm3
vmaxss xmm7, xmm7, xmm2
vmaxss xmm6, xmm6, xmm2
vsubss xmm3, xmm12, xmm6
vaddss xmm2, xmm10, xmm7
vmovss dword [rsp + 0x210], xmm2
vmovss dword [rsp + 0x214], xmm11
vmovss dword [rsp + 0x218], xmm3
vmovss dword [rsp + 0x21c], xmm8
vaddss xmm4, xmm3, dword [r12 + 0x393c]
vminss xmm6, xmm12, xmm4
vmovss dword [rsp + 0x200], xmm2
vmovss dword [rsp + 0x204], xmm11
vmovss dword [rsp + 0x208], xmm6
vmovss dword [rsp + 0x20c], xmm8
test esi, 0x40000
je 0x1400216ce
vaddss xmm0, xmm2, xmm0
vsubss xmm4, xmm3, xmm0
vfmadd213ss xmm1, xmm4, xmm0
vminss xmm0, xmm3, xmm1
vcmpltss xmm1, xmm1, xmm2
vblendvps xmm7, xmm0, xmm2, xmm1
vucomiss xmm7, xmm2
jbe 0x1400216ce
vaddss xmm0, xmm11, xmm8
mov rax, qword [0x1400c1650]
vmovss xmm1, dword [rax + 0x38e8]
vmulss xmm1, xmm1, dword [rax + 0x39d8]
vmovss xmm8, dword [0x1400690ac]
vmovss xmm2, dword [0x140069798]
vminss xmm3, xmm2, dword [rax + 0x39cc]
vxorps xmm4, xmm4, xmm4
vmaxss xmm3, xmm3, xmm4
vmovss xmm5, dword [0x14006901c]
vfmadd213ss xmm3, xmm5, xmm8
vcvttss2si ecx, xmm3
vminss xmm2, xmm2, dword [rax + 0x39d0]
vmaxss xmm2, xmm2, xmm4
vfmadd213ss xmm2, xmm5, xmm8
vcvttss2si edx, xmm2
vmulss xmm0, xmm8, xmm0
shl edx, 8
or edx, ecx
vmovss xmm2, dword [rax + 0x39d4]
vinsertps xmm1, xmm2, xmm1, 0x10
vbroadcastss xmm2, dword [0x140069798]
vminps xmm1, xmm1, xmm2
vxorps xmm2, xmm2, xmm2
vmaxps xmm1, xmm1, xmm2
vbroadcastss xmm2, dword [0x14006901c]
vfmadd213ps xmm2, xmm1, xmmword [rsp + 0x80]
vcvttps2dq xmm1, xmm2
vpsllvd xmm1, xmm1, xmmword [0x14006aac0]
vmovd eax, xmm1
or eax, edx
vpextrd r8d, xmm1, 1
or r8d, eax
vmovd edx, xmm7
vmovd eax, xmm0
shl rax, 0x20
or rdx, rax
mov rcx, qword [r13 + 0x2a8]
call fcn.14003fb60
vmulss xmm0, xmm14, xmm8
vroundss xmm0, xmm0, xmm0, 0xb
vsubss xmm0, xmm7, xmm0
vminss xmm0, xmm6, xmm0
vmovss dword [rsp + 0x208], xmm0
mov rbx, qword [rsp + 0xb8]
cmp rbx, 0xffffffffffffffff
mov r13d, dword [rsp + 0x64]
je 0x14002178d
add r12, 0x3908
lea r8, [rsp + 0x218]
mov rdi, rbx
jmp 0x14002170f
cmp byte [rdi + 1], 0x23
je 0x140021724
inc rdi
cmp rdi, 0xffffffffffffffff
je 0x14002171d
movzx eax, byte [rdi]
cmp eax, 0x23
je 0x140021700
test eax, eax
jne 0x140021706
jmp 0x140021724
mov rdi, 0xffffffffffffffff
cmp edi, ebx
je 0x14002178d
mov rsi, qword [0x1400c1650]
mov rax, qword [rsi + 0x4000]
mov rcx, qword [rax + 0x2a8]
lea rax, [rsp + 0x200]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r12
lea rax, [rsp + 0x228]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea rdx, [rsp + 0x210]
mov r9, rbx
call fcn.1400100e0
cmp byte [rsi + 0x6008], 0
je 0x14002178d
lea rcx, [rsp + 0x210]
mov rdx, rbx
mov r8, rdi
call fcn.14000fd40
mov r12, qword [rsp + 0x90]
mov r8, qword [rsp + 0x1f0]
mov dword [r8 + 0x268], 0
mov rax, qword [0x1400c1650]
vmovss xmm1, dword [rsp + 0x150]
vmovss xmm0, dword [rax + 0xe40]
vmovss xmm2, dword [rax + 0x394c]
vsubss xmm1, xmm1, xmm2
vucomiss xmm1, xmm0
jbe 0x1400217d6
xor ecx, ecx
jmp 0x14002181a
vmovss xmm4, dword [rsp + 0x154]
vmovss xmm1, dword [rax + 0xe44]
vmovss xmm3, dword [rax + 0x3950]
vsubss xmm4, xmm4, xmm3
xor ecx, ecx
vucomiss xmm4, xmm1
ja 0x14002181a
vaddss xmm2, xmm2, dword [rsp + 0x158]
vucomiss xmm0, xmm2
jae 0x14002181a
vaddss xmm0, xmm3, dword [rsp + 0x15c]
vucomiss xmm1, xmm0
setb cl
movzx ecx, cl
mov edx, dword [r15 + 0x4984]
mov ebp, dword [r8 + 0x84]
mov dword [rax + 0x49b0], ebp
mov dword [rax + 0x49b4], edx
mov dword [rax + 0x49b8], ecx
vmovups xmm0, xmmword [rsp + 0x150]
vmovups xmmword [rax + 0x49cc], xmm0
vmovups xmm0, xmmword [rsp + 0x150]
vmovups xmmword [rax + 0x49bc], xmm0
mov ecx, dword [r15 + 0x4988]
test ecx, ecx
je 0x14002188d
cmp dword [r8 + 0x10], ecx
je 0x140021879
cmp dword [r8 + 0x84], ecx
jne 0x14002188d
call fcn.140026e80
mov r8, qword [rsp + 0x1f0]
mov rax, qword [0x1400c1650]
lea rdx, [r8 + 0x218]
add r8, 0x220
mov rcx, qword [rax + 0x4000]
mov byte [rcx + 0xc0], 1
mov rsi, qword [rax + 0x4000]
mov rcx, qword [rsi + 0x2a8]
mov r9b, 1
call fcn.1400317e0
mov rax, qword [rsi + 0x2a8]
mov rcx, qword [rax + 0x60]
movsxd rax, dword [rax + 0x58]
shl rax, 4
vmovups xmm0, xmmword [rax + rcx - 0x10]
vmovups xmmword [rsi + 0x248], xmm0
mov rax, qword [rsp + 0x1f0]
inc word [rax + 0xcc]
mov byte [rax + 0xc0], 0
mov dword [r15 + 0x4a00], 0
cmp r13d, r14d
je 0x140021a8c
mov edx, dword [rsp + 0x4c]
test edx, 0x1000000
je 0x1400219f3
mov ecx, edx
and ecx, 0x10000000
jne 0x1400219f3
test edx, 0x800000
je 0x140021963
cmp byte [r15 + 0x4b7c], 0
je 0x140021963
mov rcx, qword [r15 + 0x4b18]
test rcx, rcx
je 0x140021963
mov rcx, qword [rcx + 0x3a0]
cmp rcx, qword [rax + 0x3a0]
sete cl
cmp byte [r15 + 0x6008], 0
je 0x14002196f
jmp 0x1400219b4
xor ecx, ecx
cmp byte [r15 + 0x6008], 0
jne 0x1400219b4
test cl, cl
jne 0x1400219b4
vmovss xmm0, dword [rax + 0x1f8]
vucomiss xmm0, dword [rax + 0x200]
jae 0x140021997
vmovss xmm0, dword [rax + 0x1fc]
vucomiss xmm0, dword [rax + 0x204]
jb 0x1400219b4
cmp byte [rax + 0xdc], 0
jg 0x1400219ad
cmp byte [rax + 0xdd], 0
jle 0x140021b90
mov byte [rax + 0xe5], 1
test r12, r12
je 0x1400219f3
cmp byte [r12 + 0xc1], 0
jne 0x1400219cf
cmp byte [r12 + 0xe4], 0
jle 0x1400219e1
mov byte [rax + 0xe4], 1
cmp byte [r12 + 0xc1], 0
jne 0x1400219ec
cmp byte [r12 + 0xe5], 0
jle 0x1400219f3
mov byte [rax + 0xe5], 1
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, dword [r15 + 0x38e8]
jae 0x140021a2a
mov cl, 1
cmp byte [rax + 0xe4], 0
mov dl, 1
jg 0x140021a35
mov cl, 1
cmp byte [rax + 0xe5], 0
mov dl, 1
jg 0x140021a35
cmp byte [rax + 0xe6], 0
setg dl
xor ecx, ecx
jmp 0x140021a35
mov byte [rax + 0xe4], 1
mov cl, 1
mov dl, 1
mov byte [rax + 0xc5], dl
movzx edx, byte [rax + 0xe7]
test dl, dl
jle 0x140021a55
dec dl
mov byte [rax + 0xe7], dl
or dword [rax + 0x14], 0x30200
cmp byte [rax + 0xc1], 0
jne 0x140021a6e
cmp byte [rax + 0xbe], 0
setne dl
not cl
test cl, dl
jne 0x140021a84
cmp byte [rax + 0xdc], 0
jg 0x140021a84
cmp byte [rax + 0xdd], 0
jle 0x140021b70
xor ecx, ecx
mov byte [rax + 0xc3], cl
cmp byte [rax + 0xc6], 0
je 0x140021aa2
cmp byte [rax + 0xc3], 0
sete sil
jmp 0x140021af0
cmp byte [r15 + 0x79], 0
setne cl
test byte [rsp + 0x7c], cl
jne 0x140021ac8
cmp byte [r15 + 0x7a], 0
je 0x140021a95
movsx ecx, byte [r15 + 0x6084]
cmp dword [r15 + 0x3fd0], ecx
jne 0x140021a95
movzx ecx, byte [rax + 0xdc]
test cl, cl
jle 0x140021adb
inc cl
mov byte [rax + 0xdc], cl
movzx ecx, byte [rax + 0xdd]
test cl, cl
jle 0x140021aee
inc cl
mov byte [rax + 0xdd], cl
xor esi, esi
mov rcx, qword [rsp + 0x258]
xor rcx, rsp
call fcn.140067310
mov eax, esi
vmovaps xmm6, xmmword [rsp + 0x260]
vmovaps xmm7, xmmword [rsp + 0x270]
vmovaps xmm8, xmmword [rsp + 0x280]
vmovaps xmm9, xmmword [rsp + 0x290]
vmovaps xmm10, xmmword [rsp + 0x2a0]
vmovaps xmm11, xmmword [rsp + 0x2b0]
vmovaps xmm12, xmmword [rsp + 0x2c0]
vmovaps xmm13, xmmword [rsp + 0x2d0]
vmovaps xmm14, xmmword [rsp + 0x2e0]
vmovaps xmm15, xmmword [rsp + 0x2f0]
add rsp, 0x308
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp byte [rax + 0xe5], 0
setle cl
jmp 0x140021a86
vxorps xmm3, xmm3, xmm3
test al, al
jne 0x14001fd47
jmp 0x14001fd32
mov byte [rax + 0xe4], 1
test r12, r12
jne 0x1400219b9
jmp 0x1400219f3
cmp byte [rbx + 0xbf], 0
je 0x14001fba2
vmovss dword [rsp + 0xd4], xmm7
vmovss dword [rsp + 0xd8], xmm6
mov rax, qword [0x1400c1650]
vmovss xmm0, dword [rax + 0x3d38]
vmovss xmm1, dword [0x14006ac20]
vfmadd213ss xmm1, xmm0, xmm14
vmulss xmm0, xmm0, dword [0x14006ac28]
vmaxss xmm0, xmm0, xmm1
vroundss xmm0, xmm0, xmm0, 0xb
mov qword [rsp + 0x68], rax
cmp byte [rax + 0x5e], 0
vxorps xmm8, xmm8, xmm8
je 0x140021c0a
vmovss xmm8, dword [0x1400690a0]
vmulss xmm0, xmm0, dword [0x14006ac2c]
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0x5f], 0
setne al
test dl, 1
sete cl
and cl, al
vmovshdup xmm1, xmm9
vmovaps xmmword [rsp + 0xe0], xmm1
mov byte [rsp + 0x57], cl
cmp cl, 1
jne 0x140021c8a
mov rax, qword [rbx]
vmovss xmm1, dword [rbx + 0x2a0]
vmulss xmm1, xmm1, dword [rax + 0x3d3c]
mov rcx, qword [rbx + 0x378]
test rcx, rcx
je 0x140021c64
vmulss xmm1, xmm1, dword [rcx + 0x2a0]
vmovss xmm2, dword [rax + 0x3928]
vmovaps xmm3, xmmword [rsp + 0xe0]
vsubss xmm1, xmm3, xmm1
vaddss xmm2, xmm2, xmm2
vsubss xmm1, xmm1, xmm2
vmovaps xmmword [rsp + 0xe0], xmm1
mov dword [rsp + 0x9c], edx
vmovss dword [rsp + 0xdc], xmm14
vroundss xmm6, xmm0, xmm0, 0xb
vbroadcastss xmm10, dword [0x140069040]
vmovlps qword [rsp + 0x150], xmm10
mov dword [rbx + 0x168], 1
lea rcx, str.RESIZE
call fcn.140027cd0
test ebp, ebp
vmovaps xmmword [rsp + 0xf0], xmm6
je 0x140022198
movzx eax, byte [rsp + 0x57]
xor al, 1
mov byte [rsp + 0xa8], al
mov eax, ebp
mov qword [rsp + 0xb0], rax
vmovaps xmm0, xmmword [0x14006ac30]
vinsertps xmm0, xmm0, dword [rsp + 0xe0], 0x10
vmovaps xmmword [rsp + 0x100], xmm0
vbroadcastss xmm0, dword [0x140069800]
vbroadcastss xmm1, xmm6
vxorps xmm0, xmm1, xmm0
vmovaps xmmword [rsp + 0x140], xmm0
vblendps xmm0, xmm9, xmmword [0x14006ac40], 0xe
vmovaps xmmword [rsp + 0x130], xmm0
vbroadcastss xmm14, xmm8
vmovaps xmm8, xmm1
vbroadcastss xmm6, dword [0x140069040]
xor r13d, r13d
lea r12, [0x14006a698]
lea r14, [0x140069980]
mov dword [rsp + 0x74], 0
movabs rax, 0x7f7fffff7f7fffff
mov qword [rsp + 0xa0], rax
vmovaps xmmword [rsp + 0x110], xmm6
vmovss xmm7, dword [0x140069040]
vmovaps xmmword [rsp + 0x120], xmm9
jmp 0x140021e64
xor edx, edx
test cl, cl
sete dl
xor rdx, 0x1f
test al, al
mov rax, qword [0x1400c1650]
mov ecx, 0x20
cmovne rdx, rcx
shl rdx, 4
vmovss xmm0, dword [rax + 0x38e8]
vmulss xmm0, xmm0, dword [rax + rdx + 0x39d8]
vmovss xmm2, dword [0x140069798]
vminss xmm1, xmm2, dword [rax + rdx + 0x39cc]
vxorps xmm3, xmm3, xmm3
vmaxss xmm1, xmm1, xmm3
vmovss xmm4, dword [0x1400690ac]
vmovss xmm5, dword [0x14006901c]
vfmadd213ss xmm1, xmm5, xmm4
vcvttss2si ecx, xmm1
vminss xmm1, xmm2, dword [rax + rdx + 0x39d0]
vmaxss xmm1, xmm1, xmm3
vfmadd213ss xmm1, xmm5, xmm4
vcvttss2si ebp, xmm1
shl ebp, 8
or ebp, ecx
vminss xmm1, xmm2, dword [rax + rdx + 0x39d4]
vmaxss xmm1, xmm1, xmm3
vfmadd213ss xmm1, xmm5, xmm4
vcvttss2si eax, xmm1
shl eax, 0x10
vminss xmm0, xmm0, xmm2
vmaxss xmm0, xmm0, xmm3
vfmadd213ss xmm0, xmm5, xmm4
vcvttss2si ecx, xmm0
or eax, ebp
shl ecx, 0x18
or ecx, eax
mov dword [rsp + r13*4 + 0x240], ecx
inc r13
add r12, 0x18
cmp qword [rsp + 0xb0], r13
je 0x1400221c7
vmovsd xmm10, qword [r12 - 8]
vmovsd xmm12, qword [r12]
vmulps xmm0, xmm12, xmm8
vmulps xmm13, xmm12, xmm14
vmovsd xmm1, qword [rbx + 0x28]
vmovsd xmm2, qword [rbx + 0x30]
vfmadd213ps xmm2, xmm10, xmm1
vmovddup xmm2, xmm2
vmovlhps xmm0, xmm13, xmm0
vsubps xmm1, xmm2, xmm0
vaddps xmm0, xmm2, xmm0
vblendps xmm2, xmm0, xmm1, 3
vmovaps xmmword [rsp + 0x210], xmm2
vpermilpd xmm2, xmm0, 1
vucomiss xmm1, xmm2
jbe 0x140021ec7
vmovss dword [rsp + 0x210], xmm2
vmovss dword [rsp + 0x218], xmm1
vmovshdup xmm1, xmm1
vpermilps xmm0, xmm0, 0xff
vucomiss xmm1, xmm0
jbe 0x140021ee9
vmovss dword [rsp + 0x214], xmm0
vmovss dword [rsp + 0x21c], xmm1
mov ecx, r13d
shr ecx, 8
mov eax, r13d
shr eax, 0x10
mov rdx, qword [rbx + 0x108]
movsxd rdi, dword [rbx + 0x100]
mov edi, dword [rdx + rdi*4 - 4]
not edi
mov ebp, edi
shr ebp, 8
xor edi, r13d
mov esi, r13d
shr esi, 0x18
movzx edi, dil
xor ebp, dword [r14 + rdi*4]
mov edx, ebp
shr edx, 8
xor ebp, ecx
movzx ecx, bpl
xor edx, dword [r14 + rcx*4]
mov edi, edx
shr edi, 8
xor edx, eax
movzx eax, dl
xor edi, dword [r14 + rax*4]
movzx eax, dil
shr edi, 8
xor eax, esi
xor edi, dword [r14 + rax*4]
mov rax, qword [rbx]
not edi
cmp dword [rax + 0x404c], edi
jne 0x140021f68
mov ecx, edi
mov edx, 4
mov r8, r13
xor r9d, r9d
call fcn.140016050
lea rsi, [rsp + 0x210]
mov rcx, rsi
mov edx, edi
xor r8d, r8d
mov r9d, 8
call fcn.140025600
mov dword [rsp + 0x20], 0x40800
mov rcx, rsi
mov edx, edi
lea r8, [rsp + 0x238]
lea r9, [rsp + 0x230]
call fcn.1400485b0
movzx eax, byte [rsp + 0x230]
movzx ecx, byte [rsp + 0x238]
or cl, al
mov rdi, qword [rsp + 0x68]
je 0x140021fd1
mov ecx, r13d
and ecx, 1
mov edx, 6
sub edx, ecx
mov dword [rdi + 0x4ee8], edx
test al, al
mov esi, dword [rsp + 0x4c]
je 0x14002216a
cmp byte [rdi + 0x3865], 0
je 0x140022024
lea rcx, [rsp + 0x200]
mov rdx, rbx
lea r8, [rsp + 0x180]
call fcn.140026310
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0xa0], rax
xor ecx, ecx
xor edx, edx
call fcn.140016bb0
mov dword [rsp + 0x74], 3
jmp 0x140022166
vmovshdup xmm0, xmm10
vmovss xmm1, dword [0x140069798]
vucomiss xmm0, xmm1
setne al
vucomiss xmm0, dword [0x14006aca8]
setne cl
or cl, byte [rsp + 0xa8]
and cl, al
xor eax, eax
vucomiss xmm10, xmm1
sete al
vmovaps xmm9, xmm14
vmovaps xmm14, xmm8
vmovaps xmm8, xmm15
vcmpeqps xmm15, xmm10, xmmword [0x140069860]
vmovaps xmm0, xmmword [rsp + 0x110]
vblendvps xmm0, xmm0, xmm11, xmm15
vfmsub132ps xmm12, xmm13, xmmword [rsp + 0x140]
vfmadd213ps xmm12, xmm10, xmm13
vmovsd xmm1, qword [rdi + 0xe40]
vmovsd xmm2, qword [rdi + 0x407c]
vsubps xmm1, xmm1, xmm2
vaddps xmm1, xmm12, xmm1
movzx ecx, cl
vmovd xmm2, eax
vpinsrb xmm2, xmm2, ecx, 4
vpslld xmm2, xmm2, 0x1f
vmovaps xmm3, xmmword [rsp + 0x100]
vblendvps xmm2, xmm3, xmmword [rsp + 0x130], xmm2
vcmpltps xmm3, xmm1, xmm2
vminps xmm0, xmm0, xmm1
vblendvps xmm0, xmm0, xmm2, xmm3
vmovsd xmm1, qword [rbx + 0x28]
vmovsd xmm2, qword [rbx + 0x30]
vsubps xmm6, xmm1, xmm0
vfmadd213ps xmm6, xmm10, xmm0
vaddps xmm1, xmm2, xmm1
vsubps xmm0, xmm0, xmm1
vsubps xmm7, xmm1, xmm6
vfmadd231ps xmm7, xmm10, xmm0
vmovlps qword [rsp + 0x200], xmm7
lea rcx, [rsp + 0x160]
mov rdx, rbx
lea r8, [rsp + 0x200]
call fcn.140026310
vmovsd xmm0, qword [rsp + 0x160]
vsubps xmm1, xmm7, xmm0
vbroadcastss xmm2, dword [0x140069800]
vblendvps xmm1, xmm2, xmm1, xmm15
vmovaps xmm15, xmm8
vmovaps xmm8, xmm14
vmovaps xmm14, xmm9
vmovaps xmm9, xmmword [rsp + 0x120]
vmovss xmm7, dword [0x140069040]
vaddps xmm6, xmm1, xmm6
vmovlps qword [rsp + 0xa0], xmm0
mov esi, dword [rsp + 0x4c]
movzx eax, byte [rsp + 0x230]
movzx ecx, byte [rsp + 0x238]
test r13, r13
je 0x140021d97
test al, al
jne 0x140021d97
test cl, cl
je 0x140021e4f
jmp 0x140021d97
mov dword [rsp + 0x74], 0
movabs rax, 0x7f7fffff7f7fffff
mov qword [rsp + 0xa0], rax
mov esi, dword [rsp + 0x4c]
vmovss xmm7, dword [0x140069040]
mov rdi, qword [rsp + 0x68]
vmovaps xmm6, xmm10
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x150], rax
test byte [rbx + 0x17], 1
mov ecx, dword [rsp + 0x9c]
vmovaps xmm10, xmm15
jne 0x1400221f9
xor eax, eax
cmp byte [rdi + 0x5e], 0
mov edx, 0xf
cmove edx, eax
jmp 0x140022208
mov edx, dword [rbx + 0x18]
mov eax, edx
shr eax, 1
and eax, 2
and edx, 8
or edx, eax
mov dword [rsp + 0xb0], edx
vmovaps xmm8, xmmword [rsp + 0xf0]
lea rax, [rdi + 0x5e84]
mov qword [rsp + 0xa8], rax
test ecx, 0x8800
setne al
test cl, 8
sete cl
and cl, al
mov byte [rsp + 0x100], cl
vmovaps xmm0, xmmword [0x14006ac50]
vinsertps xmm12, xmm0, xmm8, 0x10
vblendps xmm14, xmm8, xmmword [0x14006ac60], 0xe
vblendps xmm13, xmm8, xmmword [0x14006ac70], 0xe
mov r14d, 0xffffffff
xor r13d, r13d
vmovss xmm15, dword [0x1400690a0]
mov r12d, 0xffffffff
jmp 0x1400222ac
xor ecx, ecx
xor edx, edx
call fcn.140016bb0
mov esi, dword [rsp + 0x4c]
cmp byte [rsp + 0x228], 0
cmovne r12d, r13d
cmp byte [rsp + 0x1ff], 0
cmovne r14d, r13d
inc r13
cmp r13, 4
je 0x140022856
mov eax, dword [rsp + 0xb0]
bt eax, r13d
jae 0x14002229f
cmp r13, 2
setae dl
cmp r13d, 3
mov byte [rsp + 0xa0], dl
ja case.default.0x1400222ec
vmovsd xmm0, qword [rbx + 0x28]
vmovsd xmm1, qword [rbx + 0x30]
vaddps xmm1, xmm1, xmm0
mov eax, r13d
lea rcx, [0x140022c74]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
vmovshdup xmm1, xmm1
vsubss xmm1, xmm1, xmm8
vaddss xmm2, xmm15, xmm0
vaddps xmm0, xmm12, xmm0
vmovlps qword [rsp + 0x210], xmm0
vmovss dword [rsp + 0x218], xmm2
vmovss dword [rsp + 0x21c], xmm1
jmp 0x1400223b5
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rsp + 0x210], xmm0
jmp 0x1400223b5
vmovshdup xmm2, xmm1
vsubss xmm2, xmm2, xmm8
vaddss xmm3, xmm1, dword [0x140069948]
vmovss dword [rsp + 0x210], xmm3
vmovshdup xmm0, xmm0
vunpcklps xmm0, xmm0, xmm1
vaddps xmm0, xmm14, xmm0
vmovlps qword [rsp + 0x214], xmm0
vmovss dword [rsp + 0x21c], xmm2
jmp 0x1400223b5
vmovshdup xmm2, xmm0
vaddss xmm2, xmm15, xmm2
vsubss xmm1, xmm1, xmm8
vaddps xmm0, xmm13, xmm0
vmovlps qword [rsp + 0x210], xmm0
vmovss dword [rsp + 0x218], xmm1
vmovss dword [rsp + 0x21c], xmm2
jmp 0x1400223b5
vaddsubps xmm2, xmm1, xmm14
vblendps xmm0, xmm0, xmm1, 2
vaddps xmm0, xmm13, xmm0
vmovlhps xmm0, xmm0, xmm2
vmovups xmmword [rsp + 0x210], xmm0
lea r8, [r13 + 4]
mov ecx, r8d
shr ecx, 8
mov eax, r8d
shr eax, 0x10
mov rdx, qword [rbx + 0x108]
movsxd rbp, dword [rbx + 0x100]
mov ebp, dword [rdx + rbp*4 - 4]
not ebp
mov esi, ebp
shr esi, 8
xor ebp, r8d
mov edi, r8d
shr edi, 0x18
movzx ebp, bpl
lea r9, [0x140069980]
xor esi, dword [r9 + rbp*4]
mov edx, esi
shr edx, 8
xor esi, ecx
movzx ecx, sil
xor edx, dword [r9 + rcx*4]
mov ebp, edx
shr ebp, 8
xor edx, eax
movzx eax, dl
xor ebp, dword [r9 + rax*4]
movzx eax, bpl
shr ebp, 8
xor eax, edi
xor ebp, dword [r9 + rax*4]
mov rax, qword [rbx]
not ebp
cmp dword [rax + 0x404c], ebp
jne 0x14002243c
mov ecx, ebp
mov edx, 4
xor r9d, r9d
call fcn.140016050
lea rsi, [rsp + 0x210]
mov rcx, rsi
mov edx, ebp
xor r8d, r8d
mov r9d, 8
call fcn.140025600
mov dword [rsp + 0x20], 0x40800
mov rcx, rsi
mov edx, ebp
lea r8, [rsp + 0x228]
lea r9, [rsp + 0x1ff]
call fcn.1400485b0
cmp byte [rsp + 0x228], 0
mov esi, dword [rsp + 0x4c]
mov rdi, qword [rsp + 0x68]
mov ebp, 0
je 0x1400224cc
vmovss xmm0, dword [0x14006ac80]
vucomiss xmm0, dword [rdi + 0x405c]
jae 0x1400224c4
cmp r13, 2
mov eax, 0
adc eax, 3
cmp byte [rsp + 0x1ff], 0
mov dword [rdi + 0x4ee8], eax
jne 0x1400224ec
jmp 0x140022287
mov byte [rsp + 0x228], 0
cmp byte [rsp + 0x1ff], 0
je 0x140022287
cmp r13, 2
mov eax, 0
adc eax, 3
mov dword [rdi + 0x4ee8], eax
movzx eax, byte [rsp + 0xa0]
mov bpl, al
cmp byte [rdi + 0x3865], 0
je 0x14002255b
mov eax, r13d
or eax, 2
cmp eax, 3
jne 0x14002227a
lea rcx, [rsp + 0x200]
mov rdx, rbx
lea r8, [rsp + 0x180]
call fcn.140026310
mov eax, ebp
vmovss xmm0, dword [rsp + rax*4 + 0x200]
vmovss dword [rsp + rax*4 + 0x150], xmm0
mov eax, dword [rsp + 0x74]
bts eax, ebp
mov dword [rsp + 0x74], eax
mov byte [rsp + 0x1ff], 0
mov byte [rsp + 0x228], 0
jmp 0x14002227a
mov rax, qword [rdi + 0x4020]
test rax, rax
je 0x1400225ad
mov ecx, dword [rdi + 0x4034]
cmp ecx, dword [rdi + 0x3f58]
jne 0x1400225ad
mov rdx, rbx
nop dword [rax + rax]
mov rcx, rdx
mov rdx, qword [rdx + 0x388]
cmp rcx, rdx
jne 0x140022580
cmp rcx, rax
je 0x1400225b6
mov rdx, rbx
cmp rdx, rax
je 0x1400225b6
cmp rdx, rcx
je 0x1400225ad
mov rdx, qword [rdx + 0x378]
test rdx, rdx
jne 0x140022597
cmp byte [rdi + 0x4070], 0
je 0x1400225d2
vmovaps xmm0, xmmword [rsp + 0x210]
mov rax, qword [rsp + 0xa8]
vmovups xmmword [rax], xmm0
mov byte [rdi + 0x5e94], 0
test byte [rbx + 0x17], 1
je 0x1400225fb
mov rax, qword [rsp + 0xa8]
vmovdqu xmm0, xmmword [rax]
vpxor xmm0, xmm0, xmmword [rsp + 0x210]
vptest xmm0, xmm0
je 0x1400225fb
mov byte [rdi + 0x5e94], 1
lea rax, [r13*8]
add rax, r13
lea rax, [rax + rax*2]
add rax, r13
mov ecx, ebp
vmovss xmm0, dword [rdi + rcx*4 + 0xe40]
vsubss xmm0, xmm0, dword [rdi + rcx*4 + 0x407c]
vmovss xmm3, dword [rdi + rcx*4 + 0xe8]
vaddss xmm2, xmm15, xmm0
mov rbp, qword [rbx + 0x28]
mov qword [rsp + 0x230], rbp
cmp byte [rdi + 0x5e94], 0
lea rdx, [0x14006a6f0]
vmovsd xmm0, qword [rdx + rax + 8]
vmovsd xmm1, qword [rdx + rax + 0x10]
vminps xmm0, xmm0, xmm1
vmovsd xmm4, qword [rbx + 0x28]
vmovsd xmm1, qword [rbx + 0x30]
vfmadd231ps xmm4, xmm1, xmm0
vmovlps qword [rsp + 0x238], xmm4
vaddss xmm4, xmm3, dword [rsp + rcx*4 + 0x238]
vmovss dword [rsp + rcx*4 + 0x230], xmm2
je 0x1400226a9
vmovss dword [rsp + rcx*4 + 0x230], xmm4
vucomiss xmm3, dword [0x14006aca8]
je 0x1400226a5
setbe al
vucomiss xmm4, xmm2
seta cl
cmp al, cl
je 0x1400226a9
mov cl, 1
jmp 0x1400226ab
xor ecx, ecx
cmp r13d, 3
je 0x1400226ce
vmovss xmm2, dword [0x14006aa90]
cmp r13d, 2
jne 0x1400226d7
vmovss xmm2, dword [0x14006aa90]
cmp byte [rsp + 0x57], 0
je 0x1400226d7
vmovaps xmm2, xmmword [rsp + 0xe0]
xor edx, edx
test r13, r13
sete al
vmovaps xmm3, xmm9
cmp r13, 1
je 0x1400226f1
vmovss xmm3, dword [0x14006aa90]
vinsertps xmm2, xmm3, xmm2, 0x10
xor edi, edi
cmp r13, 2
sete dil
mov dl, al
vmovd xmm3, edx
vpinsrb xmm3, xmm3, edi, 4
vpslld xmm3, xmm3, 0x1f
vbroadcastss xmm4, dword [0x140069040]
vblendvps xmm3, xmm4, xmm11, xmm3
vmovsd xmm4, qword [rsp + 0x230]
vcmpltps xmm5, xmm4, xmm2
vminps xmm3, xmm3, xmm4
vblendvps xmm2, xmm3, xmm2, xmm5
test dword [rsp + 0x9c], 0x1000000
jne 0x14002274d
mov rdi, qword [rsp + 0x68]
jmp 0x1400227c2
cmp byte [rsp + 0x100], 0
je 0x14002275d
vmovaps xmm3, xmm2
jmp 0x14002277f
mov rax, qword [rbx + 0x378]
vminss xmm3, xmm2, dword [rax + 0x220]
vmovss xmm4, dword [rax + 0x218]
vcmpltss xmm5, xmm2, xmm4
vblendvps xmm3, xmm3, xmm4, xmm5
mov rdi, qword [rsp + 0x68]
test byte [rsp + 0x9c], 8
jne 0x140022796
vblendps xmm2, xmm2, xmm3, 1
jmp 0x1400227c2
mov rax, qword [rbx + 0x378]
vmovss xmm4, dword [rax + 0x21c]
vmovshdup xmm2, xmm2
vminss xmm5, xmm2, dword [rax + 0x224]
vcmpltss xmm2, xmm2, xmm4
vblendvps xmm2, xmm5, xmm4, xmm2
vinsertps xmm2, xmm3, xmm2, 0x10
test cl, cl
jne 0x140022287
vmovq xmm3, rbp
vsubps xmm6, xmm3, xmm2
vaddps xmm1, xmm1, xmm3
vcmpeqps xmm8, xmm0, xmmword [0x140069860]
vfmadd213ps xmm6, xmm0, xmm2
vsubps xmm2, xmm2, xmm1
vsubps xmm7, xmm1, xmm6
vfmadd231ps xmm7, xmm0, xmm2
vmovlps qword [rsp + 0x200], xmm7
lea rcx, [rsp + 0x160]
mov rdx, rbx
lea r8, [rsp + 0x200]
call fcn.140026310
mov esi, dword [rsp + 0x4c]
vmovsd xmm0, qword [rsp + 0x160]
vsubps xmm1, xmm7, xmm0
vbroadcastss xmm2, dword [0x140069800]
vblendvps xmm1, xmm2, xmm1, xmm8
vmovaps xmm8, xmmword [rsp + 0xf0]
vmovss xmm7, dword [0x140069040]
vaddps xmm6, xmm1, xmm6
vmovsd qword [rsp + 0x150], xmm0
jmp 0x140022287
mov rax, qword [0x1400c1650]
mov rcx, qword [rax + 0x4000]
dec dword [rcx + 0x100]
mov dword [rbx + 0x168], 0
mov rcx, qword [rdi + 0x4d10]
test rcx, rcx
mov edi, dword [rsp + 0x78]
mov r13d, dword [rsp + 0x5c]
vmovss xmm14, dword [rsp + 0xdc]
vmovaps xmm15, xmm10
je 0x140022a36
cmp qword [rcx + 0x388], rbx
jne 0x140022a36
mov rcx, qword [rsp + 0x68]
mov ecx, dword [rcx + 0x4b64]
cmp ecx, 3
je 0x1400228ee
vxorps xmm0, xmm0, xmm0
cmp ecx, 2
jne 0x140022919
mov rcx, qword [rsp + 0x68]
cmp byte [rcx + 0xe5d], 0
je 0x140022919
vmovss xmm0, dword [rax + 0x2eb0]
lea rcx, [rax + 0x2e90]
vsubss xmm0, xmm0, dword [rax + 0x2ea0]
add rax, 0x2e80
jmp 0x14002290b
vmovss xmm0, dword [rax + 0x3670]
lea rcx, [rax + 0x3650]
vsubss xmm0, xmm0, dword [rax + 0x3660]
add rax, 0x3640
vmovss xmm1, dword [rcx]
vsubss xmm1, xmm1, dword [rax]
vinsertps xmm0, xmm1, xmm0, 0x10
vxorps xmm1, xmm1, xmm1
vmovshdup xmm2, xmm0
vcmpneqps xmm2, xmm2, xmm1
vcmpneqps xmm1, xmm0, xmm1
vorps xmm1, xmm1, xmm2
vmovd eax, xmm1
test al, 1
je 0x140022a36
mov rbp, qword [rsp + 0x68]
vmovss xmm1, dword [rbp + 0x18]
vmovss xmm2, dword [rbp + 0x50]
vmulss xmm1, xmm1, dword [0x14006ac84]
vminss xmm2, xmm2, dword [rbp + 0x54]
vmulss xmm1, xmm1, xmm2
vbroadcastss xmm1, xmm1
vmovsd xmm2, qword [rbp + 0x4d40]
vfmadd213ps xmm0, xmm1, xmm2
vmovlps qword [rbp + 0x4d40], xmm0
vmovsd xmm1, qword [rbx + 0x28]
vmovsd xmm2, qword [rbx + 0x30]
vaddps xmm1, xmm1, xmm2
vinsertps xmm2, xmm9, dword [rsp + 0xe0], 0x10
vsubps xmm1, xmm2, xmm1
vmaxps xmm0, xmm0, xmm1
vmovlps qword [rbp + 0x4d40], xmm0
mov byte [rbp + 0x4d30], 0
mov byte [rbp + 0x4b7b], 1
vmovss xmm1, dword [0x140069798]
mov ecx, 0x20
call fcn.14000f220
mov esi, dword [rsp + 0x4c]
mov dword [rsp + 0x240], eax
vmovsd xmm0, qword [rbp + 0x4d40]
vcvttps2dq xmm0, xmm0
vpextrd eax, xmm0, 1
vmovd ecx, xmm0
or ecx, eax
je 0x140022a36
vmovaps xmm8, xmm6
vcvtdq2ps xmm6, xmm0
vmovsd xmm0, qword [rbx + 0x38]
vaddps xmm0, xmm0, xmm6
vmovlps qword [rsp + 0x210], xmm0
lea rcx, [rsp + 0x150]
lea r8, [rsp + 0x210]
mov rdx, rbx
call fcn.140026310
mov esi, dword [rsp + 0x4c]
mov rax, qword [rsp + 0x68]
vmovsd xmm0, qword [rax + 0x4d40]
vsubps xmm0, xmm0, xmm6
vmovaps xmm6, xmm8
vmovlps qword [rax + 0x4d40], xmm0
vmovss xmm0, dword [rbx + 0x38]
vmovss xmm2, dword [rsp + 0x150]
vucomiss xmm7, xmm2
vmovaps xmm8, xmm0
je 0x140022a6d
vucomiss xmm2, dword [rbx + 0x30]
jne 0x140022a5f
vucomiss xmm0, xmm2
vmovaps xmm8, xmm0
je 0x140022a6d
vmovss dword [rbx + 0x38], xmm2
vmovss dword [rbx + 0x30], xmm2
vmovaps xmm8, xmm2
vmovss xmm2, dword [rbx + 0x3c]
vmovss xmm4, dword [rsp + 0x154]
vmovss xmm1, dword [0x140069040]
vucomiss xmm1, xmm4
vmovaps xmm3, xmm2
je 0x140022aac
vucomiss xmm4, dword [rbx + 0x34]
jne 0x140022a9e
vucomiss xmm2, xmm4
vmovaps xmm3, xmm2
je 0x140022aac
vmovss dword [rbx + 0x3c], xmm4
vmovss dword [rbx + 0x34], xmm4
vmovaps xmm3, xmm4
vmovss xmm4, dword [rbx + 0x28]
vucomiss xmm6, dword [0x140069040]
vmovaps xmm5, xmm4
vmovaps xmm1, xmm6
je 0x140022adc
vroundss xmm6, xmm1, xmm1, 0xb
vucomiss xmm4, xmm6
vmovaps xmm5, xmm4
je 0x140022adc
vmovss dword [rbx + 0x28], xmm6
vmovaps xmm5, xmm6
vmovss xmm6, dword [rbx + 0x2c]
vmovshdup xmm1, xmm1
vucomiss xmm1, dword [0x140069040]
vmovaps xmm7, xmm6
je 0x140022b0c
vroundss xmm1, xmm1, xmm1, 0xb
vucomiss xmm6, xmm1
vmovaps xmm7, xmm6
je 0x140022b0c
vmovss dword [rbx + 0x2c], xmm1
vmovaps xmm7, xmm1
vinsertps xmm1, xmm7, xmm5, 0x10
vinsertps xmm1, xmm1, xmm8, 0x20
vinsertps xmm1, xmm1, xmm3, 0x30
vinsertps xmm3, xmm6, xmm4, 0x10
vinsertps xmm0, xmm3, xmm0, 0x20
vinsertps xmm0, xmm0, xmm2, 0x30
vcmpneqps xmm0, xmm0, xmm1
vpslld xmm0, xmm0, 0x1f
vmovmskps eax, xmm0
test eax, eax
je 0x140022b6a
test byte [rbx + 0x15], 1
jne 0x140022b6a
mov rax, qword [0x1400c1650]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, dword [rax + 0x5f6c]
jb 0x140022b6a
vmovss xmm0, dword [rax + 0x1c]
vmovss dword [rax + 0x5f6c], xmm0
cmp r14d, 0xffffffff
vmovss xmm6, dword [rsp + 0xd8]
vmovss xmm7, dword [rsp + 0xd4]
vmovaps xmm1, xmmword [rsp + 0xf0]
je 0x140022c34
cmp r14d, 3
ja case.default.0x140022bb9
vmovsd xmm2, qword [rbx + 0x28]
vmovshdup xmm0, xmm2
vaddss xmm4, xmm0, dword [rbx + 0x34]
vaddss xmm3, xmm2, dword [rbx + 0x30]
mov eax, r14d
lea rcx, [0x140022c84]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
vsubss xmm0, xmm4, xmm1
vaddss xmm1, xmm2, dword [0x1400690a0]
vaddps xmm2, xmm12, xmm2
jmp 0x140022c17
vxorps xmm2, xmm2, xmm2
vxorps xmm1, xmm1, xmm1
vxorps xmm0, xmm0, xmm0
jmp 0x140022c17
vsubss xmm0, xmm4, xmm1
vaddss xmm1, xmm3, dword [0x1400690a0]
vblendps xmm2, xmm2, xmm3, 1
vaddps xmm2, xmm12, xmm2
jmp 0x140022c17
vaddss xmm0, xmm0, dword [0x1400690a0]
vsubss xmm1, xmm3, xmm1
jmp 0x140022c13
vaddss xmm0, xmm4, dword [0x1400690a0]
vsubss xmm1, xmm3, xmm1
vinsertps xmm2, xmm2, xmm4, 0x10
vaddps xmm2, xmm13, xmm2
mov rax, qword [rsp + 0x68]
vmovlps qword [rax + 0x5e84], xmm2
vmovss dword [rax + 0x5e8c], xmm1
vmovss dword [rax + 0x5e90], xmm0
mov edx, dword [rsp + 0x74]
test edx, edx
je 0x14001fba8
test dl, 1
mov ecx, dword [rsp + 0x80]
movzx ecx, cl
mov eax, 1
cmovne ecx, eax
mov dword [rsp + 0x80], ecx
cmp edx, 1
mov ecx, dword [rsp + 0x58]
movzx ecx, cl
cmovne ecx, eax
mov dword [rsp + 0x58], ecx
jmp 0x14001fba8