Function at 0x14007e040
Capabilities:
Hash data with crc32
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
push rbp
push rsi
push r14
lea rbp, [r11 - 0x1f8]
sub rsp, 0x2e0
mov rax, qword [0x1401a6c00]
xor rax, rsp
mov qword [rbp + 0x118], rax
mov r14, qword [0x1401acd00]
mov r10d, 0xffffffff
mov qword [r11 + 0x20], rbx
mov rbx, rcx
mov qword [r11 - 0x20], rdi
mov qword [r11 - 0x28], r12
mov qword [r11 - 0x30], r13
movzx r9d, byte [rbx]
mov qword [r11 - 0x38], r15
mov r15d, r8d
mov qword [rbp - 0x38], rcx
mov ecx, r10d
vmovaps xmmword [r11 - 0xd8], xmm15
lea r8, [rbx + 1]
mov qword [rbp - 0x40], rdx
test r9b, r9b
je 0x14007e0e5
lea r11, [0x140158df0]
cmp r9b, 0x23
jne 0x14007e0c8
cmp byte [r8], r9b
jne 0x14007e0c8
cmp byte [r8 + 1], r9b
cmove ecx, r10d
movzx edx, cl
movzx eax, r9b
movzx r9d, byte [r8]
xor rdx, rax
shr ecx, 8
inc r8
xor ecx, dword [r11 + rdx*4]
test r9b, r9b
jne 0x14007e0b5
not ecx
call fcn.14008f8d0
test rax, rax
mov qword [rbp - 0x80], rax
mov rsi, rax
sete dl
mov dword [rsp + 0x48], edx
test rax, rax
jne 0x14007e114
mov edx, r15d
mov rcx, rbx
call fcn.140083f30
mov edx, dword [rsp + 0x48]
mov rsi, rax
mov ecx, dword [rsi + 0x10]
cmp dword [r14 + 0x413c], ecx
jne 0x14007e121
int3
mov ecx, r15d
and ecx, 0x30200
cmp ecx, 0x30200
jne 0x14007e136
or r15d, 6
cmp dword [r14 + 0x4110], 0
mov edi, dword [r14 + 0x4098]
mov r13d, dword [rsi + 0x2a0]
mov dword [rsp + 0x44], edi
mov dword [rsp + 0x58], r13d
jne 0x14007e165
cmp byte [r14 + 0x40a9], 0
je 0x14007e165
mov al, 1
jmp 0x14007e167
xor al, al
mov byte [rsi + 0xfb], al
lea eax, [rdi - 1]
cmp r13d, eax
setl bl
mov byte [rsp + 0x42], bl
bt r15d, 0x1a
jae 0x14007e1ad
movsxd rax, dword [r14 + 0x4c50]
imul rax, rax, 0x38
add rax, qword [r14 + 0x4c48]
cmp rsi, qword [rax + 8]
mov eax, dword [rax]
setne cl
cmp dword [rsi + 0x10c], eax
setne al
or cl, al
or bl, cl
mov byte [rsp + 0x42], bl
movzx r12d, byte [rsi + 0xf9]
cmp r13d, edi
je 0x14007e250
mov r8d, r15d
mov rcx, rsi
call fcn.1400a4440
mov byte [rsi + 0xf9], bl
test bl, bl
je 0x14007e1ef
or byte [rsi + 0x11c], 8
or byte [rsi + 0x11d], 8
or byte [rsi + 0x11e], 8
or byte [rsi + 0x11f], 8
mov eax, dword [rsi + 0x14]
xor edx, edx
mov dword [rsi + 0x18], eax
mov dword [rsi + 0x14], r15d
test dword [r14 + 0x4b38], 0x100
je 0x14007e211
mov eax, dword [r14 + 0x4b74]
jmp 0x14007e213
mov eax, edx
mov dword [rsi + 0x1c], eax
mov dword [rsi + 0x2a0], edi
vmovsd xmm0, qword [r14 + 0x4090]
mov word [rsi + 0x104], dx
vcvtpd2ps xmm0, xmm0
vmovss dword [rsi + 0x2a8], xmm0
movzx eax, word [r14 + 0x4130]
inc dword [r14 + 0x4130]
mov word [rsi + 0x106], ax
jmp 0x14007e254
mov r15d, dword [rsi + 0x14]
test dword [r14 + 0x4b38], 0x400
je 0x14007e277
mov r8d, dword [r14 + 0x4b48]
mov rcx, rsi
mov edx, dword [r14 + 0x4ba8]
call fcn.14009fed0
cmp r13d, edi
je 0x14007e35c
cmp dword [rsi + 0x468], 0
jne 0x14007e338
cmp qword [rsi + 0x458], 0
jne 0x14007e338
mov rax, qword [0x1401acd00]
xor cl, cl
cmp byte [rax + 0x5a], cl
jne 0x14007e2b2
cmp byte [rsi + 0x3c], cl
je 0x14007e33a
test dword [rsi + 0x14], 0x1080001
lea rdi, [rsi + 0x14]
jne 0x14007e33a
cmp byte [rsi + 0xfb], cl
jne 0x14007e33a
movzx ebx, byte [rsi + 0x43d]
mov rdx, qword [rbp - 0x40]
mov rcx, rsi
call fcn.140081870
test byte [rsi + 0x43d], 1
mov r15d, dword [rdi]
je 0x14007e2ee
and dword [r14 + 0x4b38], 0xffffffef
test byte [rsi + 0x43d], 4
je 0x14007e358
test bl, 4
jne 0x14007e358
test bl, 2
je 0x14007e358
cmp byte [rsi + 0xf9], 0
jne 0x14007e358
mov edi, dword [rsp + 0x44]
test r12b, r12b
jne 0x14007e35c
or byte [rsi + 0x11c], 8
or byte [rsi + 0x11d], 8
or byte [rsi + 0x11e], 8
or byte [rsi + 0x11f], 8
mov byte [rsi + 0xf9], 1
jmp 0x14007e35c
mov cl, 1
movzx ebx, byte [rsi + 0x43d]
lea rdi, [rsi + 0x14]
test cl, cl
jne 0x14007e2ce
and bl, 0xfb
and bl, 0xfd
and bl, 0xfe
mov byte [rsi + 0x43d], bl
mov edi, dword [rsp + 0x44]
test byte [rsi + 0x43d], 1
je 0x14007e37c
mov rax, qword [rsi + 0x458]
mov r12, qword [rax + 0x88]
mov qword [rbp - 0x68], r12
test r12, r12
jne 0x14007e3a6
movsxd rax, dword [r14 + 0x4110]
test eax, eax
jne 0x14007e392
xor eax, eax
mov r12d, eax
mov qword [rbp - 0x68], rax
jmp 0x14007e3a8
imul rcx, rax, 0x68
mov rax, qword [r14 + 0x4118]
mov r12, qword [rcx + rax - 0x68]
mov qword [rbp - 0x68], r12
xor eax, eax
cmp r13d, edi
je 0x14007e3bd
test r15d, 0x5000000
mov r13, rax
cmovne r13, r12
jmp 0x14007e3c4
mov r13, qword [rsi + 0x3b0]
lea rbx, [rsi + 0x130]
mov qword [rsp + 0x70], r13
cmp dword [rbx], 0
jne 0x14007e3f7
cmp dword [rbx + 4], 0
jne 0x14007e3e8
mov edx, 8
mov rcx, rbx
call fcn.1400a7020
movsxd rdx, dword [rbx]
mov eax, dword [rsi + 0x10]
mov rcx, qword [rbx + 8]
mov dword [rcx + rdx*4], eax
inc dword [rbx]
mov eax, dword [r14 + 0x4b30]
vmovups ymm1, ymmword [r14 + 0x4b08]
mov dword [rbp + 0xb0], eax
mov qword [r14 + 0x4140], rsi
movzx eax, word [rbx]
mov ecx, dword [r14 + 0x4114]
mov ebx, dword [r14 + 0x4110]
mov qword [rbp + 0x60], rsi
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0xb4], xmm0
mov word [rbp + 0xb4], ax
movzx eax, word [r14 + 0x4be0]
mov word [rbp + 0xb6], ax
movzx eax, word [r14 + 0x4bf0]
mov word [rbp + 0xb8], ax
movzx eax, word [r14 + 0x4c00]
mov word [rbp + 0xba], ax
movzx eax, word [r14 + 0x4c10]
mov word [rbp + 0xbc], ax
movzx eax, word [r14 + 0x4c30]
mov word [rbp + 0xbe], ax
movzx eax, word [r14 + 0x4c20]
mov word [rbp + 0xc0], ax
movzx eax, word [r14 + 0x4c50]
mov word [rbp + 0xc2], ax
movzx eax, word [r14 + 0x606c]
mov word [rbp + 0xc4], ax
vmovups ymm0, ymmword [r14 + 0x4ae8]
vmovups ymmword [rbp + 0x68], ymm0
vmovsd xmm0, qword [r14 + 0x4b28]
vmovups ymmword [rbp + 0x88], ymm1
vmovsd qword [rbp + 0xa8], xmm0
cmp ebx, ecx
jne 0x14007e54d
inc ebx
test ecx, ecx
je 0x14007e4f0
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14007e4f5
mov eax, 8
cmp eax, ebx
cmovg ebx, eax
cmp ebx, ecx
jle 0x14007e54d
movsxd rax, ebx
imul rcx, rax, 0x68
vzeroupper
call fcn.140094550
mov rdx, qword [r14 + 0x4118]
mov rdi, rax
test rdx, rdx
je 0x14007e53b
movsxd rcx, dword [r14 + 0x4110]
imul r8, rcx, 0x68
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r14 + 0x4118]
call fcn.140094600
mov qword [r14 + 0x4118], rdi
mov edi, dword [rsp + 0x44]
mov dword [r14 + 0x4114], ebx
movsxd rax, dword [r14 + 0x4110]
vmovups ymm0, ymmword [rbp + 0x60]
vmovups ymm1, ymmword [rbp + 0x80]
imul rcx, rax, 0x68
mov rax, qword [r14 + 0x4118]
vmovups ymmword [rcx + rax], ymm0
vmovups ymm0, ymmword [rbp + 0xa0]
vmovups ymmword [rcx + rax + 0x20], ymm1
vmovsd xmm1, qword [rbp + 0xc0]
vmovups ymmword [rcx + rax + 0x40], ymm0
vmovsd qword [rcx + rax + 0x60], xmm1
inc dword [r14 + 0x4110]
bt r15d, 0x1c
jae 0x14007e5a8
inc dword [r14 + 0x4c70]
cmp dword [rsp + 0x58], edi
je 0x14007e617
mov r8, r13
mov edx, r15d
mov rcx, rsi
vzeroupper
call fcn.1400a5540
xor edx, edx
mov qword [rsi + 0x3b8], r12
cmp qword [rsi + 0x3c0], rsi
mov eax, edx
cmovne rax, r12
mov qword [rsi + 0x3e8], rax
test rax, rax
jne 0x14007e604
mov rax, qword [rsi + 0x458]
test rax, rax
je 0x14007e604
test dword [rax + 0x10], 0x40000
je 0x14007e604
mov rax, qword [rax + 0x88]
mov qword [rsi + 0x3e8], rax
mov ecx, dword [rsi + 0x28]
test ecx, ecx
je 0x14007e617
call fcn.14008f8d0
mov qword [rsi + 0x3e8], rax
bt r15d, 0x17
jae 0x14007e627
mov edi, dword [r14 + 0x4ab8]
jmp 0x14007e62a
mov edi, dword [rsi + 0x10]
mov r13, qword [0x1401acd00]
mov dword [rsp + 0x60], edi
mov rax, qword [r13 + 0x4140]
lea rbx, [r13 + 0x4c10]
mov r8d, dword [rbx]
mov ecx, dword [rax + 0x10]
mov dword [rsp + 0x64], ecx
mov ecx, dword [rbx + 4]
cmp r8d, ecx
jne 0x14007e681
inc r8d
test ecx, ecx
je 0x14007e667
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14007e66c
mov eax, 8
cmp eax, r8d
mov rcx, rbx
cmovg r8d, eax
mov edx, r8d
vzeroupper
call fcn.1400a7090
movsxd rdx, dword [rbx]
mov rcx, qword [rbx + 8]
mov rax, qword [rsp + 0x60]
mov qword [rcx + rdx*8], rax
inc dword [rbx]
mov dword [r13 + 0x4ab8], edi
mov eax, dword [r14 + 0x4ab8]
mov dword [rsi + 0x430], eax
bt r15d, 0x1a
jae 0x14007e6e9
movsxd rax, dword [r14 + 0x4c50]
lea rcx, [r14 + 0x4c50]
imul rbx, rax, 0x38
add rbx, qword [r14 + 0x4c48]
mov rdx, rbx
mov qword [rbx + 8], rsi
mov eax, dword [r12 + 0x198]
mov dword [rbx + 0x18], eax
vzeroupper
call fcn.1400a6a90
mov eax, dword [rbx]
mov dword [rsi + 0x10c], eax
xor dl, dl
xor r13b, r13b
test byte [r14 + 0x4b38], 1
mov byte [rsp + 0x41], dl
mov byte [rsp + 0x40], dl
je 0x14007e798
movsx ecx, byte [rsi + 0x11c]
mov r8d, dword [r14 + 0x4b3c]
test r8d, ecx
setne dl
mov byte [rsp + 0x41], dl
test r8d, ecx
je 0x14007e786
vmovss xmm1, dword [r14 + 0x4b58]
vmovss xmm0, dword [r14 + 0x4b54]
vmulss xmm2, xmm0, xmm0
vmulss xmm1, xmm1, xmm1
vaddss xmm3, xmm2, xmm1
vcomiss xmm3, dword [0x14015b674]
jbe 0x14007e786
vmovsd xmm0, qword [r14 + 0x4b4c]
mov eax, dword [rsi + 0x11c]
and ecx, 0xf1
and eax, 0xffffff00
vmovsd qword [rsi + 0x120], xmm0
vmovsd xmm1, qword [r14 + 0x4b54]
or ecx, eax
mov dword [rsi + 0x11c], ecx
vmovsd qword [rsi + 0x128], xmm1
jmp 0x14007e798
lea rdx, [r14 + 0x4b4c]
mov rcx, rsi
vzeroupper
call fcn.14009ff90
test byte [r14 + 0x4b38], 2
vxorps xmm15, xmm15, xmm15
je 0x14007e82d
movsx ecx, byte [rsi + 0x11d]
mov eax, ecx
and eax, dword [r14 + 0x4b40]
je 0x14007e7cd
vcomiss xmm15, dword [r14 + 0x4b5c]
jae 0x14007e7cd
mov r13b, 1
jmp 0x14007e7d1
test eax, eax
je 0x14007e7e1
vcomiss xmm15, dword [r14 + 0x4b60]
mov byte [rsp + 0x40], 1
jb 0x14007e7e6
mov byte [rsp + 0x40], 0
test byte [rsi + 0x1c], 4
je 0x14007e7fb
test cl, 4
jne 0x14007e7fb
mov eax, dword [rsi + 0x68]
mov dword [r14 + 0x4b5c], eax
test byte [rsi + 0x1c], 8
je 0x14007e814
test byte [rsi + 0x11d], 4
jne 0x14007e814
mov eax, dword [rsi + 0x6c]
mov dword [r14 + 0x4b60], eax
mov r8d, dword [r14 + 0x4b40]
lea rdx, [r14 + 0x4b5c]
mov rcx, rsi
vzeroupper
call fcn.1400a00f0
test byte [r14 + 0x4b38], 0x80
je 0x14007e875
vmovss xmm0, dword [r14 + 0x4b6c]
xor eax, eax
vcomiss xmm0, xmm15
jb 0x14007e857
vmovss dword [rsi + 0xd0], xmm0
mov dword [rsi + 0xd8], eax
vmovss xmm0, dword [r14 + 0x4b70]
vcomiss xmm0, xmm15
jb 0x14007e875
vmovss dword [rsi + 0xd4], xmm0
mov dword [rsi + 0xdc], eax
test byte [r14 + 0x4b38], 4
mov ebx, dword [rsp + 0x44]
mov edi, dword [rsp + 0x58]
je 0x14007ea1f
vmovsd xmm0, qword [r14 + 0x4b64]
vmovsd qword [rsi + 0x80], xmm0
xor r12d, r12d
test dword [r14 + 0x4b38], 0x800
je 0x14007e8ba
vmovups ymm0, ymmword [r14 + 0x4bac]
vmovups ymmword [rsi + 0x20], ymm0
test byte [r14 + 0x4b38], 8
je 0x14007e90b
mov ecx, dword [r14 + 0x4b44]
movzx edx, byte [r14 + 0x4b79]
test ecx, ecx
je 0x14007e8e2
movsx eax, byte [rsi + 0x11e]
test ecx, eax
je 0x14007e90b
movzx ecx, byte [rsi + 0x11e]
mov eax, dword [rsi + 0x11c]
and ecx, 0xf1
shl ecx, 0x10
and eax, 0xff00ffff
or ecx, eax
mov byte [rsi + 0xf6], dl
mov dword [rsi + 0x11c], ecx
test byte [r14 + 0x4b38], 0x20
je 0x14007e922
xor edx, edx
mov rcx, rsi
vzeroupper
call fcn.14008fbf0
cmp byte [rsi + 0xf9], 0
je 0x14007e947
and byte [rsi + 0x11c], 0xf7
and byte [rsi + 0x11d], 0xf7
and byte [rsi + 0x11e], 0xf7
and byte [rsi + 0x11f], 0xf7
mov qword [r14 + 0x4140], r12
cmp edi, ebx
je 0x140080af0
movzx r12d, byte [rsi + 0x119]
mov edi, 1
vmovaps xmmword [rsp + 0x2b0], xmm6
mov eax, r15d
vmovaps xmmword [rsp + 0x2a0], xmm7
and eax, 0x3000000
cmp qword [rbp - 0x40], 0
vmovaps xmmword [rsp + 0x290], xmm8
vmovaps xmmword [rsp + 0x280], xmm9
vmovaps xmmword [rsp + 0x270], xmm10
vmovaps xmmword [rsp + 0x260], xmm11
vmovaps xmmword [rsp + 0x250], xmm12
vmovaps xmmword [rsp + 0x240], xmm13
mov byte [rsi + 0xf3], 1
vmovaps xmmword [rsp + 0x230], xmm14
mov dword [rsp + 0x54], eax
setne al
mov byte [rsi + 0xfd], al
mov dword [rsi + 0x278], 0xff7fffff
mov dword [rsi + 0x27c], 0xff7fffff
mov dword [rsi + 0x280], 0x7f7fffff
mov dword [rsi + 0x284], 0x7f7fffff
mov ecx, dword [rsi + 0x134]
mov byte [rsp + 0x4c], r12b
mov dword [rsp + 0x78], edi
cmp ecx, edi
jge 0x14007ea51
test ecx, ecx
je 0x14007ea36
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14007ea3b
cmp edi, ebx
je 0x14007e89c
xor r12d, r12d
mov qword [rsi + 0x80], r12
jmp 0x14007e89f
mov eax, 8
cmp eax, edi
lea rcx, [rsi + 0x130]
mov edx, edi
cmovg edx, eax
vzeroupper
call fcn.1400a7020
mov dword [rsi + 0x130], edi
mov rcx, qword [rsi + 0x2e0]
vzeroupper
call fcn.1400b2110
mov dword [rsi + 0x1f0], 0xffffffff
bt r15d, 0x1d
jae 0x14007eaa6
mov rdx, qword [rsi + 0x2e0]
mov r8d, 2
lea rcx, [rdx + 0xa8]
call fcn.1400b0310
mov rdx, qword [rsi + 0x2e0]
mov r8d, edi
lea rcx, [rdx + 0xa8]
call fcn.1400b01d0
cmp byte [rsi + 0x43c], 0
je 0x14007eb64
mov rbx, qword [rsi + 0x2e0]
movsxd rdi, dword [rsi + 0x434]
mov byte [rsi + 0x43c], 0
cmp edi, dword [rbx + 0x14]
jle 0x14007eb05
mov rcx, rdi
shl rcx, 2
call fcn.140094550
mov rdx, qword [rbx + 0x18]
mov r12, rax
test rdx, rdx
je 0x14007eafe
movsxd r8, dword [rbx + 0x10]
mov rcx, rax
shl r8, 2
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0x18]
call fcn.140094600
mov qword [rbx + 0x18], r12
mov dword [rbx + 0x14], edi
mov rbx, qword [rsi + 0x2e0]
movsxd rdi, dword [rsi + 0x438]
cmp edi, dword [rbx + 0x24]
jle 0x14007eb55
lea rcx, [rdi + rdi*4]
shl rcx, 2
call fcn.140094550
mov rdx, qword [rbx + 0x28]
mov r12, rax
test rdx, rdx
je 0x14007eb4e
movsxd rcx, dword [rbx + 0x20]
lea r8, [rcx + rcx*4]
mov rcx, rax
shl r8, 2
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0x28]
call fcn.140094600
mov qword [rbx + 0x28], r12
mov dword [rbx + 0x24], edi
movzx r12d, byte [rsp + 0x4c]
xor eax, eax
mov qword [rsi + 0x434], rax
mov rax, qword [rsi + 0x40]
test rax, rax
je 0x14007eb73
cmp qword [rax + 0x60], rsi
je 0x14007eb97
test byte [rsi + 0x43d], 1
jne 0x14007eb97
cmp qword [r14 + 0x4ef0], 0
je 0x14007ec29
test dword [rsi + 0x14], 0x20000
jne 0x14007ec29
mov r9, qword [rbp - 0x80]
test r9, r9
je 0x14007ec2d
mov r10, qword [rbp - 0x38]
mov r9, qword [rsi + 8]
mov rax, r10
mov r8, r9
sub r8, r10
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x14007ebd3
inc rax
test ecx, ecx
jne 0x14007ebc0
test edx, edx
je 0x14007ec29
movsxd rdi, dword [rsi + 0xb0]
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [r10 + rbx], 0
jne 0x14007ebe5
inc rbx
cmp rdi, rbx
jae 0x14007ec11
mov rcx, r9
call fcn.140094600
mov rcx, rbx
call fcn.140094550
mov r10, qword [rbp - 0x38]
mov r9, rax
mov rdi, rbx
mov r8, rbx
mov rdx, r10
mov rcx, r9
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsi + 8], rax
mov dword [rsi + 0xb0], edi
mov r9, qword [rbp - 0x80]
lea r8, [rsi + 0x78]
mov rcx, rsi
lea rdx, [rsi + 0x70]
call fcn.140082e10
movzx eax, byte [rsi + 0x118]
test al, al
jle 0x14007ec50
dec al
mov byte [rsi + 0x118], al
movzx eax, byte [rsi + 0x119]
test al, al
jle 0x14007ec63
dec al
mov byte [rsi + 0x119], al
movzx eax, byte [rsi + 0x11a]
test al, al
jle 0x14007ec76
dec al
mov byte [rsi + 0x11a], al
test r9, r9
jne 0x14007ec8e
test r13b, r13b
je 0x14007ec87
cmp byte [rsp + 0x40], r9b
jne 0x14007ec8e
mov byte [rsi + 0x119], 1
xor edi, edi
cmp byte [rsp + 0x42], dil
je 0x14007ecd9
test r15d, 0x6000000
je 0x14007ecd9
mov byte [rsi + 0x119], 1
test r15b, 0x40
je 0x14007ecd9
test r13b, r13b
jne 0x14007ecb8
mov dword [rsi + 0x68], edi
mov dword [rsi + 0x60], edi
movzx ebx, byte [rsp + 0x40]
test bl, bl
jne 0x14007ecc7
mov dword [rsi + 0x6c], edi
mov dword [rsi + 0x64], edi
mov qword [rsi + 0x78], 0
mov qword [rsi + 0x70], 0
jmp 0x14007ecde
movzx ebx, byte [rsp + 0x40]
call fcn.1400a5610
mov rcx, qword [rsi + 0x40]
mov rdx, qword [0x1401acd00]
test rcx, rcx
je 0x14007ecfc
mov eax, dword [rdx + 0x4098]
mov dword [rcx + 0x6c], eax
cmp qword [rdx + 0x4c90], rcx
je 0x14007ed3b
test rcx, rcx
je 0x14007ed2a
mov eax, dword [rcx + 0x28]
mov dword [rdx + 0x4c88], eax
mov rax, qword [rdx + 0x39a0]
mov qword [rdx + 0x4c90], rcx
test rax, rax
je 0x14007ed3b
call rax
jmp 0x14007ed3b
mov dword [rdx + 0x4c88], 0x3f800000
mov qword [rdx + 0x4c90], rcx
test dword [r14 + 8], 0x8000
vmovss xmm14, dword [0x1401509fc]
je 0x14007ed58
mov rax, qword [rsi + 0x40]
vmovss xmm0, dword [rax + 0x28]
jmp 0x14007ed5d
vmovaps xmm0, xmm14
vmovss dword [rsi + 0x2d4], xmm0
mov rcx, qword [0x1401acd00]
mov qword [rcx + 0x4140], rsi
movsxd rax, dword [rsi + 0x1f0]
cmp eax, 0xffffffff
je 0x14007ed8f
imul rdx, rax, 0x250
add rdx, qword [rcx + 0x5008]
jmp 0x14007ed92
mov rdx, rdi
mov qword [rcx + 0x4fe0], rdx
mov rax, qword [rsi]
vmovss xmm0, dword [rax + 0x3e7c]
mov rax, qword [rsi + 0x3b0]
vmulss xmm1, xmm0, dword [rsi + 0x2d0]
vmulss xmm2, xmm1, dword [rsi + 0x2d4]
test rax, rax
je 0x14007edc8
vmulss xmm2, xmm2, dword [rax + 0x2d0]
vmovss dword [rcx + 0x3e90], xmm2
vmovss dword [rcx + 0x3e78], xmm2
mov rax, qword [0x1401acd00]
cmp qword [rax + 0x4fe0], 0
mov rcx, qword [rax + 0x4140]
jne 0x14007edfe
cmp qword [rcx + 0x1e8], 0
jne 0x14007edfe
mov al, 1
jmp 0x14007ee00
xor al, al
mov byte [rcx + 0x1a0], al
movzx edx, byte [rsi + 0x43d]
mov r15d, dword [rsi + 0x14]
movzx ecx, dl
and cl, 1
jne 0x14007ee2b
bt r15d, 0x18
jae 0x14007ee2b
vmovss xmm1, dword [r14 + 0x3a28]
jmp 0x14007ee4f
test r15d, 0x6000000
je 0x14007ee46
bt r15d, 0x1b
jb 0x14007ee46
vmovss xmm1, dword [r14 + 0x3a30]
jmp 0x14007ee4f
vmovss xmm1, dword [r14 + 0x3a0c]
mov rax, rsi
vmovss dword [rax + 0x94], xmm1
vmovsd xmm0, qword [r14 + 0x3a00]
vmovsd qword [rsi + 0x88], xmm0
test cl, cl
jne 0x14007eeb0
mov eax, r15d
and eax, 0x5000000
cmp eax, 0x1000000
jne 0x14007eeb0
test byte [rsi + 0x1c], 2
jne 0x14007eeb0
vucomiss xmm1, xmm15
jne 0x14007eeb0
bt r15d, 0xa
jae 0x14007ee9d
vmovss xmm0, dword [r14 + 0x3a04]
jmp 0x14007eea2
vmovaps xmm0, xmm15
vmovss dword [rsi + 0x8c], xmm0
mov dword [rsi + 0x88], edi
mov edi, dword [rsp + 0x48]
mov dword [rsp + 0x50], edi
vmovss xmm0, dword [rsi + 0x88]
vmaxss xmm1, xmm0, dword [r14 + 0x3a44]
vmaxss xmm2, xmm1, dword [r14 + 0x4bcc]
vmovss dword [rsi + 0x1a4], xmm2
mov eax, dword [r14 + 0x4bd0]
mov dword [rsi + 0x1a8], eax
test r15b, 0x21
jne 0x14007ef89
test dl, 1
jne 0x14007ef89
lea rdx, [rbp + 0xd0]
mov rcx, rsi
call fcn.1400a0d60
cmp qword [r14 + 0x4148], rsi
jne 0x14007ef52
cmp dword [r14 + 0x4190], 0
jne 0x14007ef52
cmp dword [r14 + 0x4194], 0
jne 0x14007ef52
mov r8b, 1
lea rdx, [rbp + 0xd8]
lea rcx, [rbp + 0xd0]
call fcn.140093450
test al, al
je 0x14007ef52
cmp word [r14 + 0x387a], 2
jne 0x14007ef52
mov byte [rsi + 0xf7], 1
cmp byte [rsi + 0xf7], 0
je 0x14007ef90
movzx ecx, byte [rsi + 0xf6]
test cl, cl
movzx edi, dil
sete al
test cl, cl
mov byte [rsi + 0xf6], al
mov rcx, rsi
mov eax, 1
cmovne edi, eax
mov dword [rsp + 0x50], edi
call fcn.1400944d0
jmp 0x14007ef90
mov byte [rsi + 0xf6], 0
mov r8d, dword [rsi + 0x14]
xor edx, edx
mov rcx, qword [rsi]
mov byte [rsi + 0xf7], 0
mov dword [rsi + 0x98], edx
mov dword [rsi + 0xa0], edx
vmovss xmm12, dword [rsi + 0xe8]
vmovss xmm13, dword [rsi + 0xec]
test r8b, 1
je 0x14007efc9
vmovaps xmm4, xmm15
jmp 0x14007f007
vmovss xmm0, dword [rsi + 0x2d0]
mov rdx, qword [rsi + 0x3b0]
vmulss xmm1, xmm0, dword [rcx + 0x3e7c]
vmulss xmm2, xmm1, dword [rsi + 0x2d4]
test rdx, rdx
je 0x14007eff5
vmulss xmm2, xmm2, dword [rdx + 0x2d0]
vmovss xmm0, dword [rcx + 0x3a38]
vaddss xmm1, xmm0, xmm0
vaddss xmm4, xmm1, xmm2
xor edx, edx
bt r8d, 0xa
jae 0x14007f054
vmovss xmm0, dword [rsi + 0x2d0]
mov rax, qword [rsi + 0x3b0]
vmulss xmm1, xmm0, dword [rcx + 0x3e7c]
vmulss xmm2, xmm1, dword [rsi + 0x2d4]
test rax, rax
je 0x14007f03a
vmulss xmm2, xmm2, dword [rax + 0x2d0]
vmovss xmm0, dword [rcx + 0x3a38]
vaddss xmm1, xmm2, dword [rsi + 0x1a8]
vaddss xmm0, xmm0, xmm0
vaddss xmm3, xmm1, xmm0
jmp 0x14007f059
vmovaps xmm3, xmm15
vaddss xmm0, xmm3, xmm4
mov dword [rsi + 0xa4], edx
lea r8, [rsi + 0x78]
mov rdx, rsi
mov qword [rsi + 0xe8], 0
lea rcx, [rsp + 0x60]
vmovss dword [rsi + 0x9c], xmm0
call fcn.140082b30
test r15b, 0x40
je 0x14007f0ca
cmp byte [rsi + 0xf6], 0
jne 0x14007f0ca
test r13b, r13b
jne 0x14007f0ad
vmovss xmm0, dword [rsp + 0x60]
mov dil, 1
vmovss dword [rsi + 0x68], xmm0
mov dword [rsp + 0x48], edi
test bl, bl
jne 0x14007f170
vmovss xmm0, dword [rsp + 0x64]
vmovss dword [rsi + 0x6c], xmm0
mov byte [rsp + 0x50], 1
jmp 0x14007f170
movzx eax, byte [rsi + 0x110]
test al, al
jg 0x14007f0e2
cmp byte [rsi + 0x111], 0
jle 0x14007f170
test r13b, r13b
jne 0x14007f113
test al, al
jle 0x14007f113
cmp byte [rsi + 0x112], r13b
je 0x14007f101
vmovss xmm0, dword [rsi + 0x68]
vmaxss xmm1, xmm0, dword [rsp + 0x60]
jmp 0x14007f107
vmovss xmm1, dword [rsp + 0x60]
mov dil, 1
mov dword [rsp + 0x48], edi
vmovss dword [rsi + 0x68], xmm1
test bl, bl
jne 0x14007f144
cmp byte [rsi + 0x111], bl
jle 0x14007f144
cmp byte [rsi + 0x112], bl
je 0x14007f134
vmovss xmm0, dword [rsi + 0x6c]
vmaxss xmm1, xmm0, dword [rsp + 0x64]
jmp 0x14007f13a
vmovss xmm1, dword [rsp + 0x64]
vmovss dword [rsi + 0x6c], xmm1
mov byte [rsp + 0x50], 1
cmp byte [rsi + 0xf6], 0
jne 0x14007f170
test dword [rsi + 0x14], 0x100
mov rcx, qword [0x1401acd00]
jne 0x14007f170
vcomiss xmm15, dword [rcx + 0x616c]
jb 0x14007f170
mov eax, dword [rcx + 0x1c]
mov dword [rcx + 0x616c], eax
lea r8, [rsi + 0x68]
mov rdx, rsi
lea rcx, [rbp + 0xf0]
call fcn.140083130
cmp byte [rsi + 0xf6], 0
vmovss xmm3, dword [rax]
vmovss xmm0, dword [rax + 4]
vmovss dword [rsi + 0x68], xmm3
vmovss dword [rsi + 0x6c], xmm0
je 0x14007f216
bt r15d, 0x18
jb 0x14007f216
test byte [rsi + 0x14], 1
mov rcx, qword [rsi]
je 0x14007f1b6
vmovaps xmm1, xmm15
jmp 0x14007f1f2
vmovss xmm0, dword [rcx + 0x3e7c]
mov rax, qword [rsi + 0x3b0]
vmulss xmm1, xmm0, dword [rsi + 0x2d0]
vmulss xmm2, xmm1, dword [rsi + 0x2d4]
test rax, rax
je 0x14007f1e2
vmulss xmm2, xmm2, dword [rax + 0x2d0]
vmovss xmm0, dword [rcx + 0x3a38]
vaddss xmm1, xmm0, xmm0
vaddss xmm1, xmm1, xmm2
vaddss xmm0, xmm3, dword [rsi + 0x58]
vaddss xmm1, xmm1, dword [rsi + 0x5c]
vsubss xmm0, xmm0, dword [rsi + 0x58]
vsubss xmm1, xmm1, dword [rsi + 0x5c]
vmovss dword [rbp - 0x20], xmm0
vmovss dword [rbp - 0x1c], xmm1
lea rax, [rbp - 0x20]
jmp 0x14007f224
vmovsd xmm0, qword [rsi + 0x68]
vmovsd qword [rbp + 0x50], xmm0
lea rax, [rbp + 0x50]
movzx r13d, byte [rsp + 0x42]
movzx edi, byte [rsp + 0x41]
vmovsd xmm0, qword [rax]
vmovsd qword [rsi + 0x60], xmm0
test r13b, r13b
je 0x14007f283
mov eax, r15d
mov dword [rsi + 0x114], 0xffffffff
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x14007f283
test dil, dil
jne 0x14007f283
movsxd rax, dword [r14 + 0x4c50]
imul rcx, rax, 0x38
mov rax, qword [r14 + 0x4c58]
vmovss xmm0, dword [rcx + rax - 0x14]
vmovss xmm1, dword [rcx + rax - 0x10]
vmovss dword [rsi + 0x58], xmm0
vmovss dword [rsi + 0x5c], xmm1
bt r15d, 0x18
jae 0x14007f310
mov rdx, qword [rsp + 0x70]
lea rbx, [rdx + 0x1d0]
movzx eax, word [rbx]
mov word [rsi + 0x104], ax
mov ecx, dword [rbx + 4]
mov r8d, dword [rbx]
cmp r8d, ecx
jne 0x14007f2dd
inc r8d
test ecx, ecx
je 0x14007f2c1
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14007f2c6
mov eax, 8
cmp eax, r8d
mov rcx, rbx
cmovg r8d, eax
mov edx, r8d
call fcn.1400a7090
mov rdx, qword [rsp + 0x70]
movsxd rcx, dword [rbx]
mov rax, qword [rbx + 8]
mov qword [rax + rcx*8], rsi
inc dword [rbx]
mov eax, dword [rsp + 0x54]
bt r15d, 0x1a
jb 0x14007f314
test dil, dil
jne 0x14007f314
cmp eax, 0x3000000
je 0x14007f314
vmovsd xmm0, qword [rdx + 0x140]
vmovsd qword [rsi + 0x58], xmm0
jmp 0x14007f314
mov eax, dword [rsp + 0x54]
vmovss xmm2, dword [rsi + 0x120]
vucomiss xmm2, dword [0x14015b708]
je 0x14007f374
cmp byte [rsi + 0x119], 0
jne 0x14007f374
vmovss xmm0, dword [rsi + 0x128]
vmulss xmm1, xmm0, dword [rsi + 0x60]
vmovss xmm0, dword [rsi + 0x12c]
vmulss xmm3, xmm0, dword [rsi + 0x64]
vsubss xmm2, xmm2, xmm1
vmovss xmm1, dword [rsi + 0x124]
vmovss dword [rbp - 0x18], xmm2
vsubss xmm2, xmm1, xmm3
xor r8d, r8d
lea rdx, [rbp - 0x18]
mov rcx, rsi
vmovss dword [rbp - 0x14], xmm2
call fcn.14009ff90
jmp 0x14007f3d3
bt r15d, 0x1c
jae 0x14007f384
lea rcx, [rbp + 0xf8]
jmp 0x14007f3b8
bt r15d, 0x1a
jae 0x14007f39e
test dil, dil
jne 0x14007f39e
test r12b, r12b
jle 0x14007f39e
lea rcx, [rbp + 0x100]
jmp 0x14007f3b8
bt r15d, 0x19
jae 0x14007f3d3
test dil, dil
jne 0x14007f3d3
cmp eax, 0x3000000
je 0x14007f3d3
lea rcx, [rbp + 0xe0]
mov rdx, rsi
call fcn.14008ede0
vmovss xmm1, dword [rax + 4]
vmovss xmm0, dword [rax]
vmovss dword [rsi + 0x58], xmm0
vmovss dword [rsi + 0x5c], xmm1
cmp dword [rsi + 0x54], 0
jl 0x14007f598
cmp byte [rsi + 0xf2], 0
jne 0x14007f598
mov rax, qword [rsi + 0x40]
test dword [rax + 4], 0x1000
jne 0x14007f598
vmovss xmm0, dword [rax + 8]
vmovss xmm1, dword [rax + 0xc]
vmovss dword [rbp + 0x10], xmm0
vaddss xmm0, xmm0, dword [rax + 0x10]
vmovss dword [rbp + 0x14], xmm1
vaddss xmm1, xmm1, dword [rax + 0x14]
vmovss dword [rbp + 0x18], xmm0
vmovss xmm0, dword [rsi + 0x58]
vmovss dword [rbp + 0x1c], xmm1
vmovss xmm1, dword [rsi + 0x5c]
vmovss dword [rbp], xmm0
vaddss xmm0, xmm0, dword [rsi + 0x60]
vmovss dword [rbp + 4], xmm1
vaddss xmm1, xmm1, dword [rsi + 0x64]
lea rdx, [rbp]
lea rcx, [rbp + 0x10]
vmovss dword [rbp + 8], xmm0
vmovss dword [rbp + 0xc], xmm1
call fcn.140083e20
test al, al
jne 0x14007f598
mov edx, dword [rsi + 0x10]
lea r9, [rsi + 0x60]
lea r8, [rsi + 0x58]
mov dword [rsp + 0x20], 0x20
mov rcx, rsi
call fcn.14007dad0
mov qword [rsi + 0x40], rax
mov rcx, rax
mov rdx, qword [0x1401acd00]
test rax, rax
je 0x14007f497
mov eax, dword [rdx + 0x4098]
mov dword [rcx + 0x6c], eax
cmp qword [rdx + 0x4c90], rcx
je 0x14007f4d6
test rcx, rcx
je 0x14007f4c5
mov eax, dword [rcx + 0x28]
mov dword [rdx + 0x4c88], eax
mov rax, qword [rdx + 0x39a0]
mov qword [rdx + 0x4c90], rcx
test rax, rax
je 0x14007f4d6
call rax
jmp 0x14007f4d6
mov dword [rdx + 0x4c88], 0x3f800000
mov qword [rdx + 0x4c90], rcx
test dword [r14 + 8], 0x8000
je 0x14007f4eb
mov rax, qword [rsi + 0x40]
vmovss xmm0, dword [rax + 0x28]
jmp 0x14007f4f0
vmovaps xmm0, xmm14
vmovss dword [rsi + 0x2d4], xmm0
mov rcx, qword [0x1401acd00]
mov qword [rcx + 0x4140], rsi
movsxd rax, dword [rsi + 0x1f0]
cmp eax, 0xffffffff
je 0x14007f522
imul rdx, rax, 0x250
add rdx, qword [rcx + 0x5008]
jmp 0x14007f524
xor edx, edx
mov qword [rcx + 0x4fe0], rdx
mov rax, qword [rsi]
vmovss xmm0, dword [rax + 0x3e7c]
mov rax, qword [rsi + 0x3b0]
vmulss xmm1, xmm0, dword [rsi + 0x2d0]
vmulss xmm2, xmm1, dword [rsi + 0x2d4]
test rax, rax
je 0x14007f55a
vmulss xmm2, xmm2, dword [rax + 0x2d0]
vmovss dword [rcx + 0x3e90], xmm2
vmovss dword [rcx + 0x3e78], xmm2
mov rax, qword [0x1401acd00]
cmp qword [rax + 0x4fe0], 0
mov rcx, qword [rax + 0x4140]
jne 0x14007f590
cmp qword [rcx + 0x1e8], 0
jne 0x14007f590
mov al, 1
jmp 0x14007f592
xor al, al
mov byte [rcx + 0x1a0], al
movzx eax, byte [rsi + 0xf2]
test al, al
je 0x14007f5b6
mov rdx, qword [rbp - 0x68]
mov rcx, rsi
call fcn.1400a6450
movzx eax, byte [rsi + 0xf2]
mov rcx, qword [rsi + 0x40]
vmovss xmm0, dword [r14 + 0x3ac0]
vmaxss xmm6, xmm0, dword [r14 + 0x3ac8]
vmovss xmm1, dword [r14 + 0x3abc]
vmovss xmm2, dword [rcx + 0x18]
vaddss xmm0, xmm2, dword [rcx + 0x20]
vmaxss xmm7, xmm1, dword [r14 + 0x3ac4]
vmovss xmm5, dword [rcx + 0x1c]
vmovss xmm8, dword [rcx + 8]
vmovss xmm9, dword [rcx + 0xc]
vaddss xmm1, xmm5, dword [rcx + 0x24]
vaddss xmm10, xmm8, dword [rcx + 0x10]
vaddss xmm11, xmm9, dword [rcx + 0x14]
vsubss xmm4, xmm0, xmm7
vaddss xmm0, xmm7, xmm2
vaddss xmm2, xmm6, xmm5
vsubss xmm3, xmm1, xmm6
vmovss dword [rbp - 0x5c], xmm2
vmovss dword [rbp - 0x50], xmm8
vmovss dword [rbp - 0x4c], xmm9
vmovss dword [rbp - 0x48], xmm10
vmovss dword [rbp - 0x44], xmm11
vmovss dword [rbp - 0x60], xmm0
vmovss dword [rbp - 0x58], xmm4
vmovss dword [rbp - 0x54], xmm3
test dil, dil
jne 0x14007f6bb
bt r15d, 0x18
jb 0x14007f6bb
test al, al
jne 0x14007f668
vsubss xmm0, xmm10, xmm8
vcomiss xmm0, xmm15
jbe 0x14007f6bb
vsubss xmm0, xmm11, xmm9
vcomiss xmm0, xmm15
jbe 0x14007f6bb
jmp 0x14007f6af
cmp dword [r14 + 0x39d8], 0
jle 0x14007f6bb
call fcn.140091430
vmovss xmm2, dword [rax + 0x10]
vmovss xmm3, dword [rax + 0x14]
vaddss xmm1, xmm7, xmm2
vaddss xmm0, xmm6, xmm3
vmovss dword [rbp - 0x5c], xmm0
vaddss xmm0, xmm2, dword [rax + 0x18]
vsubss xmm2, xmm0, xmm7
vmovss dword [rbp - 0x60], xmm1
vaddss xmm1, xmm3, dword [rax + 0x1c]
vsubss xmm0, xmm1, xmm6
vmovss dword [rbp - 0x54], xmm0
vmovss dword [rbp - 0x58], xmm2
lea rdx, [rbp - 0x60]
mov rcx, rsi
call fcn.140083350
cmp byte [rsi + 0xf2], 0
vcvttss2si eax, dword [rsi + 0x58]
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vcvttss2si eax, dword [rsi + 0x5c]
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsi + 0x5c], xmm0
vmovss dword [rsi + 0x58], xmm1
jne 0x14007f728
test byte [rsi + 0x43d], 1
jne 0x14007f728
bt r15d, 0x18
jae 0x14007f703
vmovss xmm0, dword [r14 + 0x3a24]
jmp 0x14007f72d
mov eax, r15d
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x14007f71d
vmovss xmm0, dword [r14 + 0x3a2c]
jmp 0x14007f72d
vmovss xmm0, dword [r14 + 0x3a08]
jmp 0x14007f72d
vmovaps xmm0, xmm15
mov rax, rsi
xor r12b, r12b
vmovss dword [rax + 0x90], xmm0
test r13b, r13b
je 0x14007f751
bt r15d, 0xc
jb 0x14007f751
bt r15d, 0x1a
jae 0x14007f76e
mov r12b, 1
mov ebx, 1
cmp qword [rsi + 0x460], 0
jne 0x14007f792
test byte [rsi + 0x43d], 1
je 0x14007f792
xor r13b, r13b
jmp 0x14007f795
test byte [rsi + 0x43d], 1
jne 0x14007f77e
bt r15d, 0x18
jb 0x14007f751
bt r15d, 0x19
movzx r12d, r12b
mov ebx, 1
cmovae r12d, ebx
jmp 0x14007f756
mov r13b, 1
xor eax, eax
mov dword [rsp + 0x7c], 0xffffffff
test dword [rsi + 0x14], 0x1000000
mov edi, eax
vpxor xmm0, xmm0, xmm0
mov dword [rsp + 0x68], 0xffffffff
vmovups xmmword [rbp + 0x108], xmm0
jne 0x14007f7c8
cmp byte [r14 + 0x66], al
setne dil
inc edi
vmovss xmm3, dword [r14 + 0x3e78]
vmulss xmm0, xmm3, dword [0x14015b68c]
vaddss xmm1, xmm0, dword [rsi + 0x90]
vmulss xmm0, xmm3, dword [0x14015b6c4]
vaddss xmm2, xmm1, xmm14
vmaxss xmm1, xmm2, xmm0
vcvttss2si eax, xmm1
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rbp - 0x68], xmm0
test r13b, r13b
je 0x14007f85d
cmp byte [rsi + 0xf6], 0
jne 0x14007f85d
lea rax, [rbp - 0x60]
mov rcx, rsi
mov qword [rsp + 0x30], rax
lea r9, [rsp + 0x68]
lea rax, [rbp + 0x108]
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x7c]
lea rdx, [rsp + 0x60]
mov dword [rsp + 0x20], edi
call fcn.1400a45e0
mov edx, dword [rsp + 0x48]
test eax, eax
je 0x14007f861
movzx ecx, byte [rsp + 0x50]
test al, 1
movzx edx, dl
cmovne edx, ebx
test al, 2
cmovne ecx, ebx
jmp 0x14007f865
mov edx, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x50]
cmp byte [rsi + 0xf2], 0
movzx eax, byte [rsp + 0x7c]
mov byte [rsi + 0xfe], al
movzx eax, byte [rsp + 0x68]
mov byte [rsi + 0xff], al
je 0x14007f93e
mov rax, qword [rsi + 0x40]
cmp byte [rax + 0x59], 0
jne 0x14007f89c
vmovsd xmm0, qword [rsi + 0x58]
vmovsd qword [rax + 8], xmm0
mov rax, qword [rsi + 0x40]
cmp byte [rax + 0x5a], 0
jne 0x14007f8b0
vmovsd xmm0, qword [rsi + 0x60]
vmovsd qword [rax + 0x10], xmm0
mov rax, qword [rsi + 0x40]
vmovss xmm3, dword [rax + 0x120]
vmovss xmm0, dword [rax + 0x124]
vaddss xmm1, xmm0, dword [rax + 0xc]
vaddss xmm2, xmm3, dword [rax + 8]
vmovss xmm0, dword [rax + 0x10]
vmovss dword [rax + 0x1c], xmm1
vmovss dword [rax + 0x18], xmm2
vsubss xmm1, xmm0, xmm3
vaddss xmm2, xmm1, dword [rax + 0x128]
vmovss xmm0, dword [rax + 0x14]
vsubss xmm1, xmm0, dword [rax + 0x124]
vmaxss xmm3, xmm2, xmm15
vaddss xmm2, xmm1, dword [rax + 0x12c]
vmovss dword [rax + 0x20], xmm3
vmaxss xmm0, xmm2, xmm15
vmovss dword [rax + 0x24], xmm0
mov rax, qword [rsi + 0x40]
vmovss xmm3, dword [rax + 8]
vmovss xmm2, dword [rax + 0xc]
vaddss xmm1, xmm3, dword [rax + 0x10]
vaddss xmm0, xmm2, dword [rax + 0x14]
vmovss dword [rbp - 0x48], xmm1
vmovss dword [rbp - 0x44], xmm0
vmovss dword [rbp - 0x50], xmm3
vmovss dword [rbp - 0x4c], xmm2
cmp byte [rsi + 0xf6], 0
mov rax, qword [rsi + 0x40]
vmovsd xmm0, qword [rax + 8]
vmovsd qword [rsi + 0x4c], xmm0
jne 0x14007faf9
cmp qword [rbp - 0x80], 0
vmovss xmm0, dword [rsi + 0xa4]
vaddss xmm2, xmm0, dword [rsi + 0x9c]
vmovss xmm1, dword [rsi + 0x6c]
vmovss xmm0, dword [rsi + 0x240]
vmovss xmm5, dword [rsi + 0x68]
vsubss xmm7, xmm1, xmm2
vsubss xmm1, xmm0, dword [rsi + 0x238]
vmovss xmm2, dword [rsi + 0x244]
vsubss xmm0, xmm2, dword [rsi + 0x23c]
vaddss xmm6, xmm0, xmm13
vaddss xmm3, xmm1, xmm12
jne 0x14007f9b8
vmovss dword [rbp - 0x10], xmm15
vmovss dword [rbp - 0xc], xmm15
lea rax, [rbp - 0x10]
jmp 0x14007f9e8
vmovss xmm0, dword [rsi + 0x88]
vmovss xmm2, dword [rsi + 0x8c]
vaddss xmm0, xmm0, xmm0
vaddss xmm1, xmm0, dword [rsi + 0x70]
vaddss xmm2, xmm2, xmm2
vaddss xmm0, xmm2, dword [rsi + 0x74]
vmovss dword [rbp - 4], xmm0
vmovss dword [rbp - 8], xmm1
lea rax, [rbp - 8]
vmovss xmm8, dword [rax]
vmovss xmm4, dword [rax + 4]
xor ebx, ebx
movzx eax, dl
vmovd xmm0, eax
movzx eax, cl
vmovd xmm1, ebx
vpcmpeqd xmm2, xmm0, xmm1
vblendvps xmm0, xmm5, xmm3, xmm2
vmovss dword [rsp + 0x68], xmm0
vmovd xmm0, eax
vmovd xmm1, ebx
vpcmpeqd xmm2, xmm0, xmm1
vblendvps xmm3, xmm7, xmm6, xmm2
bt r15d, 0xe
jb 0x14007fa3a
vcomiss xmm4, xmm3
jbe 0x14007fa36
test r15b, 8
je 0x14007fa3a
xor cl, cl
jmp 0x14007fa3c
mov cl, 1
mov byte [rsi + 0xf1], cl
bt r15d, 0xf
jb 0x14007fa89
test cl, cl
je 0x14007fa58
vmovss xmm1, dword [r14 + 0x3a6c]
jmp 0x14007fa5d
vmovaps xmm1, xmm15
vmovss xmm0, dword [rsp + 0x68]
vsubss xmm1, xmm0, xmm1
vcomiss xmm8, xmm1
jbe 0x14007fa7c
mov eax, r15d
and eax, 0x808
cmp eax, 0x800
je 0x14007fa89
mov byte [rsi + 0xf0], bl
vmovaps xmm1, xmm15
jmp 0x14007fab5
mov byte [rsi + 0xf0], 1
test cl, cl
jne 0x14007faac
vcomiss xmm4, xmm3
jbe 0x14007faa4
test r15b, 8
jne 0x14007faa4
mov cl, 1
jmp 0x14007faa6
xor cl, cl
mov byte [rsi + 0xf1], cl
vmovss xmm1, dword [r14 + 0x3a6c]
test cl, cl
je 0x14007fac4
vmovss xmm0, dword [r14 + 0x3a6c]
jmp 0x14007fac9
vmovaps xmm0, xmm15
vmovss dword [rsi + 0xe8], xmm0
vaddss xmm0, xmm0, dword [rsi + 0xa0]
vmovss dword [rsi + 0xa0], xmm0
vaddss xmm0, xmm1, dword [rsi + 0xa4]
vmovss dword [rsi + 0xa4], xmm0
vmovss dword [rsi + 0xec], xmm1
mov eax, r15d
and eax, 0x5000000
cmp eax, 0x1000000
jne 0x14007fb1f
cmp dword [rsp + 0x54], 0x3000000
je 0x14007fb1f
mov rax, qword [rsp + 0x70]
add rax, 0x278
jmp 0x14007fb23
lea rax, [rbp - 0x50]
test byte [rsi + 0x14], 1
vmovups xmm0, xmmword [rax]
vmovss xmm3, dword [rsi + 0x58]
vmovss xmm4, dword [rsi + 0x5c]
vaddss xmm5, xmm3, dword [rsi + 0x60]
vaddss xmm6, xmm4, dword [rsi + 0x64]
mov rcx, qword [rsi]
vmovups xmmword [rbp - 0x30], xmm0
je 0x14007fb50
vmovaps xmm0, xmm15
jmp 0x14007fb8c
vmovss xmm0, dword [rcx + 0x3e7c]
mov rax, qword [rsi + 0x3b0]
vmulss xmm1, xmm0, dword [rsi + 0x2d0]
vmulss xmm2, xmm1, dword [rsi + 0x2d4]
test rax, rax
je 0x14007fb7c
vmulss xmm2, xmm2, dword [rax + 0x2d0]
vmovss xmm0, dword [rcx + 0x3a38]
vaddss xmm1, xmm0, xmm0
vaddss xmm0, xmm1, xmm2
vaddss xmm1, xmm3, dword [rsi + 0x68]
vmovss dword [rbp - 0x78], xmm3
vmovss dword [rbp - 0x70], xmm1
vaddss xmm2, xmm0, xmm4
vmovss xmm0, dword [rsi + 0x5c]
vmovss dword [rbp - 0x74], xmm0
vmovss dword [rbp - 0x6c], xmm2
vmovss dword [rsi + 0x228], xmm3
vmovss dword [rsi + 0x22c], xmm4
vmovss dword [rsi + 0x230], xmm5
vmovss dword [rsi + 0x234], xmm6
test byte [rsi + 0x43d], 1
je 0x14007fbef
mov rcx, rsi
call fcn.1400a0d10
vaddss xmm1, xmm0, dword [rsi + 0x22c]
vmovss dword [rsi + 0x22c], xmm1
vmovss xmm4, dword [rbp - 0x30]
vmaxss xmm1, xmm4, dword [rsi + 0x228]
vmovss xmm5, dword [rbp - 0x2c]
vmaxss xmm0, xmm5, dword [rsi + 0x22c]
vmovss xmm14, dword [rbp - 0x28]
vmovss xmm13, dword [rbp - 0x24]
vmovss dword [rsi + 0x228], xmm1
vmovss dword [rsi + 0x22c], xmm0
vminss xmm1, xmm14, dword [rsi + 0x230]
vminss xmm0, xmm13, dword [rsi + 0x234]
vmovss dword [rsi + 0x230], xmm1
vmovss dword [rsi + 0x234], xmm0
vmovss xmm2, dword [rsi + 0x58]
vaddss xmm0, xmm2, dword [rsi + 0x60]
vmovss xmm1, dword [rsi + 0x5c]
vsubss xmm11, xmm0, dword [rsi + 0xa0]
vaddss xmm0, xmm1, dword [rsi + 0x64]
vsubss xmm12, xmm0, dword [rsi + 0xa4]
vaddss xmm7, xmm2, dword [rsi + 0x98]
vaddss xmm9, xmm1, dword [rsi + 0x9c]
mov eax, r15d
and eax, 0x401
vmovss dword [rsi + 0x244], xmm12
vmovss dword [rsi + 0x238], xmm7
vmovss dword [rsi + 0x23c], xmm9
vmovss dword [rsi + 0x240], xmm11
cmp eax, 1
jne 0x14007fcae
vmovss xmm6, dword [rsi + 0x94]
jmp 0x14007fcb7
vmovss xmm6, dword [r14 + 0x3a40]
vmovss xmm3, dword [0x140155d58]
vmulss xmm0, xmm3, dword [rsi + 0x88]
vmovss xmm10, dword [rsi + 0x94]
vcvttss2si eax, xmm0
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vmaxss xmm8, xmm1, xmm10
vaddss xmm0, xmm7, xmm3
vaddss xmm2, xmm0, xmm8
vcomiss xmm2, xmm15
vcvttss2si eax, xmm2
jae 0x14007fd04
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vucomiss xmm0, xmm2
je 0x14007fd04
dec eax
vaddss xmm1, xmm9, xmm3
vaddss xmm2, xmm1, xmm6
vcomiss xmm2, xmm15
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsi + 0x248], xmm0
vcvttss2si eax, xmm2
jae 0x14007fd37
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vucomiss xmm0, xmm2
je 0x14007fd37
dec eax
vaddss xmm1, xmm11, xmm3
vsubss xmm2, xmm1, xmm8
vcomiss xmm2, xmm15
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsi + 0x24c], xmm0
vcvttss2si eax, xmm2
jae 0x14007fd6b
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vucomiss xmm0, xmm2
je 0x14007fd6b
dec eax
vaddss xmm1, xmm12, xmm3
vsubss xmm2, xmm1, xmm10
vcomiss xmm2, xmm15
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsi + 0x250], xmm0
vcvttss2si eax, xmm2
jae 0x14007fd9f
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vucomiss xmm0, xmm2
je 0x14007fd9f
dec eax
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsi + 0x254], xmm0
vmovss xmm0, dword [rsi + 0x24c]
vcomiss xmm0, xmm5
jae 0x14007fdc3
vmovaps xmm2, xmm5
jmp 0x14007fdc7
vminss xmm2, xmm13, xmm0
vmovss xmm0, dword [rsi + 0x248]
vcomiss xmm0, xmm4
jae 0x14007fddb
vmovaps xmm1, xmm4
jmp 0x14007fddf
vminss xmm1, xmm14, xmm0
vmovss dword [rsi + 0x248], xmm1
vmovss dword [rsi + 0x24c], xmm2
vmovss xmm0, dword [rsi + 0x254]
vcomiss xmm0, xmm5
jb 0x14007fe01
vminss xmm5, xmm13, xmm0
vmovss xmm0, dword [rsi + 0x250]
vcomiss xmm0, xmm4
jb 0x14007fe13
vminss xmm4, xmm14, xmm0
vmovss dword [rsi + 0x250], xmm4
vmovss dword [rsi + 0x254], xmm5
vmovss xmm0, dword [rsi + 0x60]
vcomiss xmm0, xmm15
jbe 0x14007fe42
test r15d, 0x2000040
jne 0x14007fe42
vmulss xmm1, xmm0, dword [0x14015b6a0]
jmp 0x14007fe53
vmovss xmm0, dword [r14 + 0x3e78]
vmulss xmm1, xmm0, dword [0x140150974]
vxorps xmm0, xmm0, xmm0
vcvttss2si eax, xmm1
vcvtsi2ss xmm0, xmm0, eax
mov rcx, rsi
mov rdx, rsi
vmovss dword [rcx + 0x2ac], xmm0
vmovss xmm1, dword [rsi + 0x88]
vmovss xmm2, dword [rsi + 0x240]
vaddss xmm0, xmm1, xmm1
vaddss xmm3, xmm0, dword [rsi + 0x70]
vsubss xmm1, xmm2, dword [rsi + 0x238]
vsubss xmm0, xmm3, xmm1
vmaxss xmm0, xmm0, xmm15
vmovss dword [rsi + 0xc8], xmm0
vmovss xmm1, dword [rsi + 0x8c]
vmovss xmm0, dword [rsi + 0x244]
vaddss xmm2, xmm1, xmm1
vsubss xmm1, xmm0, dword [rsi + 0x23c]
vaddss xmm3, xmm2, dword [rsi + 0x74]
vsubss xmm2, xmm3, xmm1
vmaxss xmm0, xmm2, xmm15
lea rcx, [rbp + 0xe8]
vmovss dword [rsi + 0xcc], xmm0
call fcn.140082800
vmovss xmm0, dword [rax]
vmovss xmm1, dword [rax + 4]
vmovss dword [rsi + 0xc0], xmm0
vmovss dword [rsi + 0xc4], xmm1
mov dword [rsi + 0xd0], 0x7f7fffff
mov dword [rsi + 0xd4], 0x7f7fffff
mov qword [rsi + 0xa8], 0
mov rax, qword [r14 + 0x3e70]
mov rcx, qword [rsi + 0x2e0]
mov rdx, qword [rax + 0x40]
mov rdx, qword [rdx + 8]
call fcn.1400aed10
mov rcx, qword [0x1401acd00]
lea r8, [rbp - 0x28]
xor r9d, r9d
lea rdx, [rbp - 0x30]
mov rax, qword [rcx + 0x4140]
mov byte [rax + 0xf5], 1
mov rbx, qword [rcx + 0x4140]
mov rcx, qword [rbx + 0x2e0]
call fcn.1400aeb30
mov rax, qword [rbx + 0x2e0]
movsxd rcx, dword [rax + 0x58]
mov rax, qword [rax + 0x60]
add rcx, rcx
vmovss xmm0, dword [rax + rcx*8 - 0xc]
vmovss xmm1, dword [rax + rcx*8 - 8]
vmovss xmm2, dword [rax + rcx*8 - 4]
mov eax, dword [rax + rcx*8 - 0x10]
mov dword [rbx + 0x278], eax
vmovss dword [rbx + 0x27c], xmm0
vmovss dword [rbx + 0x280], xmm1
vmovss dword [rbx + 0x284], xmm2
movzx eax, byte [rsi + 0x43d]
and al, 5
cmp al, 1
je 0x140080128
mov eax, r15d
xor bl, bl
and eax, 0x5000000
cmp eax, 0x1000000
jne 0x1400800a1
cmp dword [rsp + 0x54], 0x3000000
je 0x1400800a1
mov r9, qword [rsp + 0x70]
movsxd rax, dword [r9 + 0x1d0]
cmp eax, 2
jl 0x14008006a
mov rcx, rax
mov rax, qword [r9 + 0x1d8]
mov rdx, qword [rax + rcx*8 - 0x10]
test rdx, rdx
je 0x14008006a
vmovss xmm0, dword [rdx + 0x58]
vmovss xmm1, dword [rdx + 0x5c]
vmovss dword [rbp + 0x30], xmm0
vaddss xmm0, xmm0, dword [rdx + 0x60]
vmovss dword [rbp + 0x34], xmm1
vaddss xmm1, xmm1, dword [rdx + 0x64]
vmovss dword [rbp + 0x38], xmm0
vmovss xmm0, dword [rsi + 0x58]
vmovss dword [rbp + 0x3c], xmm1
vmovss xmm1, dword [rsi + 0x5c]
vmovss dword [rbp + 0x20], xmm0
vaddss xmm0, xmm0, dword [rsi + 0x60]
vmovss dword [rbp + 0x24], xmm1
vaddss xmm1, xmm1, dword [rsi + 0x64]
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x30]
vmovss dword [rbp + 0x28], xmm0
vmovss dword [rbp + 0x2c], xmm1
call fcn.140099710
mov r9, qword [rsp + 0x70]
movzx r8d, al
jmp 0x14008006d
xor r8b, r8b
mov rdx, qword [rsi + 0x2e0]
movsxd rax, dword [rdx]
imul rcx, rax, 0x38
mov rax, qword [rdx + 8]
cmp dword [rcx + rax - 0x18], 0
jne 0x1400800a1
mov rax, qword [r9 + 0x2e0]
cmp dword [rax + 0x20], 0
je 0x1400800a1
test r8b, r8b
jne 0x1400800a1
mov bl, 1
mov qword [rsi + 0x2e0], rax
mov rcx, qword [r14 + 0x4ee0]
test rcx, rcx
jne 0x1400800b4
mov rcx, qword [r14 + 0x4cf0]
test r12b, r12b
jne 0x1400800e8
test rcx, rcx
je 0x1400800e3
mov rax, qword [rcx + 0x3d8]
cmp qword [rsi + 0x3d8], rax
je 0x1400800e8
mov rax, qword [rsi + 0x458]
test rax, rax
je 0x1400800e3
cmp rax, qword [rcx + 0x458]
je 0x1400800e8
xor r8b, r8b
jmp 0x1400800eb
mov r8b, 1
vmovss xmm0, dword [rbp - 0x68]
vmovss dword [rsp + 0x30], xmm0
lea rax, [rbp + 0x108]
movzx r9d, r13b
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x78]
mov rcx, rsi
mov dword [rsp + 0x20], edi
call fcn.14009cf60
test bl, bl
je 0x140080128
lea rax, [rsi + 0x2e8]
mov qword [rsi + 0x2e0], rax
vmovss xmm6, dword [rsi + 0x80]
mov ecx, r15d
shr ecx, 3
not cl
and cl, 1
vucomiss xmm6, xmm15
je 0x140080148
vmovaps xmm8, xmm6
jmp 0x140080190
vmovss xmm0, dword [rsi + 0x88]
vmovss xmm1, dword [rsi + 0x60]
vaddss xmm2, xmm0, xmm0
vmovss xmm0, dword [rsi + 0xa0]
vsubss xmm3, xmm1, xmm2
vaddss xmm2, xmm0, dword [rsi + 0x98]
mov eax, r15d
and eax, 0x808
vsubss xmm1, xmm3, xmm2
cmp eax, 0x800
jne 0x140080187
vmovss xmm0, dword [rsi + 0x70]
jmp 0x14008018c
vmovaps xmm0, xmm15
vmaxss xmm8, xmm1, xmm0
vmovss xmm5, dword [rsi + 0x84]
vucomiss xmm5, xmm15
je 0x1400801a5
vmovaps xmm7, xmm5
jmp 0x1400801e2
vmovss xmm0, dword [rsi + 0x8c]
vmovss xmm1, dword [rsi + 0x64]
vaddss xmm2, xmm0, xmm0
vmovss xmm0, dword [rsi + 0xa4]
vsubss xmm3, xmm1, xmm2
vaddss xmm2, xmm0, dword [rsi + 0x9c]
vsubss xmm1, xmm3, xmm2
test cl, cl
je 0x1400801d9
vmovss xmm0, dword [rsi + 0x74]
jmp 0x1400801de
vmovaps xmm0, xmm15
vmaxss xmm7, xmm1, xmm0
vucomiss xmm6, xmm15
vmovss xmm3, dword [rsi + 0x94]
vmovss xmm10, dword [rsi + 0x88]
vmovss xmm11, dword [rsi + 0xc0]
vmovss xmm0, dword [rsi + 0x238]
vsubss xmm2, xmm0, xmm11
vmaxss xmm1, xmm10, xmm3
vaddss xmm2, xmm2, xmm1
vcvttss2si eax, xmm2
vxorps xmm4, xmm4, xmm4
vcvtsi2ss xmm4, xmm4, eax
vmovss dword [rsi + 0x258], xmm4
vmovss xmm9, dword [rsi + 0x8c]
vmovss xmm12, dword [rsi + 0xc4]
vmovss xmm0, dword [rsi + 0x23c]
vsubss xmm2, xmm0, xmm12
vmaxss xmm1, xmm3, xmm9
vaddss xmm0, xmm2, xmm1
vcvttss2si eax, xmm0
vaddss xmm0, xmm8, xmm4
vxorps xmm3, xmm3, xmm3
vcvtsi2ss xmm3, xmm3, eax
vmovss dword [rsi + 0x25c], xmm3
vmovss dword [rsi + 0x260], xmm0
vaddss xmm1, xmm7, xmm3
vmovss dword [rsi + 0x264], xmm1
vmovups xmm0, xmmword [rsi + 0x258]
vmovups xmmword [rsi + 0x268], xmm0
vmovss xmm8, dword [rsi + 0x58]
vmovss xmm4, dword [rsi + 0x98]
vsubss xmm0, xmm8, xmm11
vaddss xmm1, xmm0, xmm10
vaddss xmm3, xmm1, xmm4
vmovss dword [rsi + 0x288], xmm3
vmovss xmm13, dword [rsi + 0x5c]
vmovss xmm7, dword [rsi + 0x9c]
vsubss xmm0, xmm13, xmm12
vaddss xmm1, xmm0, xmm9
vaddss xmm14, xmm1, xmm7
vmovss dword [rsi + 0x28c], xmm14
jne 0x1400802ec
vmovss xmm0, dword [rsi + 0x60]
vaddss xmm1, xmm10, xmm10
vsubss xmm2, xmm0, xmm1
vaddss xmm1, xmm4, dword [rsi + 0xa0]
vsubss xmm6, xmm2, xmm1
vucomiss xmm5, xmm15
vaddss xmm0, xmm3, xmm6
vmovss dword [rsi + 0x290], xmm0
jne 0x140080319
vmovss xmm0, dword [rsi + 0x64]
vaddss xmm1, xmm9, xmm9
vsubss xmm2, xmm0, xmm1
vaddss xmm1, xmm7, dword [rsi + 0xa4]
vsubss xmm5, xmm2, xmm1
movzx r8d, byte [rsp + 0x42]
lea rcx, [rsi + 0x1ac]
xor edi, edi
vaddss xmm0, xmm14, xmm5
vmovss dword [rsi + 0x294], xmm0
vaddss xmm1, xmm4, xmm10
vsubss xmm2, xmm1, xmm11
vmovss dword [rsi + 0x184], xmm2
mov qword [rsi + 0x188], rdi
vcvtss2sd xmm1, xmm10, xmm10
vcvtss2sd xmm0, xmm8, xmm8
vaddsd xmm2, xmm1, xmm0
vcvtss2sd xmm0, xmm4, xmm4
vcvtss2sd xmm1, xmm11, xmm11
vsubsd xmm3, xmm2, xmm1
vaddsd xmm6, xmm3, xmm0
vcvtss2sd xmm2, xmm9, xmm9
vcvtss2sd xmm1, xmm13, xmm13
vaddsd xmm3, xmm2, xmm1
vcvtss2sd xmm0, xmm12, xmm12
vsubsd xmm4, xmm3, xmm0
vcvtss2sd xmm1, xmm7, xmm7
vaddsd xmm5, xmm4, xmm1
vcvtsd2ss xmm0, xmm6, xmm6
vmovss dword [rsi + 0x150], xmm0
vcvtsd2ss xmm2, xmm5, xmm5
vmovss dword [rsi + 0x154], xmm2
vmovss xmm0, dword [rsi + 0x150]
vcvtss2sd xmm0, xmm0, xmm0
vsubsd xmm1, xmm6, xmm0
vcvtsd2ss xmm3, xmm1, xmm1
vmovss dword [rsi + 0x190], xmm3
vinsertps xmm2, xmm2, xmm2, 0xe
vcvtss2sd xmm2, xmm2, xmm2
vsubsd xmm0, xmm5, xmm2
vcvtsd2ss xmm1, xmm0, xmm0
vmovss dword [rsi + 0x194], xmm1
vmovss xmm2, dword [rsi + 0x150]
vmovss xmm0, dword [rsi + 0x154]
vmovss dword [rsi + 0x140], xmm2
vmovss dword [rsi + 0x144], xmm0
vmovss dword [rsi + 0x148], xmm2
vmovss dword [rsi + 0x14c], xmm0
vmovss dword [rsi + 0x158], xmm2
vmovss dword [rsi + 0x15c], xmm0
vmovss dword [rsi + 0x160], xmm2
vmovss dword [rsi + 0x164], xmm0
mov qword [rsi + 0x170], rdi
mov qword [rsi + 0x168], rdi
mov qword [rsi + 0x178], rdi
mov word [rsi + 0x180], di
mov dword [rsi + 0x198], edi
movzx eax, word [rsi + 0x19e]
mov word [rsi + 0x19c], ax
mov dword [rsi + 0x19e], 0x10000
vcomiss xmm15, dword [rsi + 0xcc]
setb al
mov byte [rsi + 0x1a2], al
mov byte [rsi + 0x1a3], dil
vmovss xmm1, dword [r14 + 0x3a44]
call fcn.1400d2dd0
vmovaps xmm14, xmmword [rsp + 0x230]
vmovaps xmm13, xmmword [rsp + 0x240]
vmovaps xmm12, xmmword [rsp + 0x250]
vmovaps xmm11, xmmword [rsp + 0x260]
vmovaps xmm10, xmmword [rsp + 0x270]
vmovaps xmm9, xmmword [rsp + 0x280]
vmovaps xmm8, xmmword [rsp + 0x290]
mov qword [rsi + 0x1c8], rdi
mov ecx, dword [rsi + 0x1d4]
test ecx, ecx
jns 0x1400804f5
mov eax, ecx
cdq
sub eax, edx
mov edx, edi
sar eax, 1
add eax, ecx
lea rcx, [rsi + 0x1d0]
test eax, eax
cmovg edx, eax
call fcn.1400a7090
mov dword [rsi + 0x1d0], edi
lea rax, [rsi + 0x2b0]
mov qword [rsi + 0x1e0], rax
mov ecx, 1
mov rax, qword [rsp + 0x70]
mov qword [rsi + 0x1e8], rdi
mov dword [rsi + 0x1f4], ecx
test rax, rax
je 0x14008052d
mov eax, dword [rax + 0x1f4]
jmp 0x14008052f
mov eax, ecx
mov dword [rsi + 0x1f8], eax
mov eax, dword [rsi + 0x2ac]
mov dword [rsi + 0x1fc], eax
mov dword [rsi + 0x200], 0xbf800000
mov ecx, dword [rsi + 0x20c]
test ecx, ecx
jns 0x140080571
mov eax, ecx
cdq
sub eax, edx
mov edx, edi
sar eax, 1
add eax, ecx
lea rcx, [rsi + 0x208]
test eax, eax
cmovg edx, eax
call fcn.1400a7020
mov dword [rsi + 0x208], edi
mov ecx, dword [rsi + 0x21c]
test ecx, ecx
jns 0x14008059d
mov eax, ecx
cdq
sub eax, edx
mov edx, edi
sar eax, 1
add eax, ecx
lea rcx, [rsi + 0x218]
test eax, eax
cmovg edx, eax
call fcn.1400a7020
mov dword [rsi + 0x218], edi
movzx eax, byte [rsi + 0x110]
test al, al
jle 0x1400805b6
dec al
mov byte [rsi + 0x110], al
movzx eax, byte [rsi + 0x111]
test al, al
jle 0x1400805c9
dec al
mov byte [rsi + 0x111], al
test r12b, r12b
je 0x1400805ee
mov edx, 2
mov rcx, rsi
call fcn.14008fbf0
cmp rsi, qword [r14 + 0x4cf0]
jne 0x1400805ee
xor edx, edx
mov rcx, rsi
call fcn.1400949d0
mov rbx, qword [rbp - 0x40]
test rbx, rbx
je 0x14008063b
mov rdx, qword [rsi + 0x40]
cmp byte [rdx + 0x5b], dil
je 0x14008063b
mov rax, qword [0x1401acd00]
mov rcx, qword [rax + 0x4c80]
cmp rdx, qword [rcx]
je 0x14008063b
test dword [r14 + 0x6264], 0x200
je 0x140080631
mov rdx, qword [rsi + 8]
lea rcx, str._viewport__Window__s_closed_by_PlatformRequestClose_n
call fcn.1400845b0
mov byte [rbx], dil
mov byte [r14 + 0x4f00], dil
test r15b, 1
jne 0x140080691
test byte [rsi + 0x43d], 1
jne 0x140080691
vmovss xmm3, dword [rsi + 0x94]
vaddss xmm1, xmm3, dword [rbp - 0x78]
vmovss xmm2, dword [rbp - 0x74]
vmovss xmm0, dword [rbp - 0x70]
mov r8, qword [rbp - 0x38]
lea rdx, [rbp + 0x40]
vmovss dword [rbp + 0x40], xmm1
vmovss dword [rbp + 0x44], xmm2
vmovss xmm2, dword [rbp - 0x6c]
vsubss xmm1, xmm0, xmm3
mov r9, rbx
mov rcx, rsi
vmovss dword [rbp + 0x48], xmm1
vmovss dword [rbp + 0x4c], xmm2
call fcn.14009de20
mov dword [rsi + 0x298], edi
test byte [r14 + 8], 0x40
je 0x140080905
cmp qword [r14 + 0x4158], rsi
jne 0x1400808c5
mov rax, qword [rsi + 0x3d0]
test dword [rax + 0x14], 0x80000
jne 0x1400808c5
mov r13, qword [0x1401acd00]
movzx ecx, byte [r13 + 0x59]
cmp cl, byte [r13 + 0xe69]
je 0x140080737
test cl, cl
je 0x1400808c5
vmovss xmm1, dword [0x1401509fc]
vcomiss xmm1, dword [r13 + 0x50b4]
ja 0x1400808c5
mov eax, dword [r13 + 0x41a4]
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, rax
vcomiss xmm0, xmm1
jb 0x1400808c5
mov rax, qword [r13 + 0x6210]
lea rdx, str.Missing_Text
test rax, rax
lea rcx, [0x140156118]
cmovne rdx, rax
call fcn.14009fde0
jmp 0x1400808c5
mov eax, dword [rsi + 0xb4]
mov dword [r13 + 0x4ae8], eax
mov r12, qword [rsi + 0x3d0]
test cl, cl
jne 0x1400807a9
mov rax, qword [0x1401acd00]
vmovss xmm2, dword [r13 + 0x41b8]
vcomiss xmm2, xmm15
vmovss xmm0, dword [rax + 0x3a38]
vaddss xmm1, xmm0, xmm0
vaddss xmm3, xmm1, dword [rax + 0x3e78]
jb 0x1400808c5
vmovss xmm0, dword [r13 + 0x41bc]
vcomiss xmm0, xmm15
jb 0x1400808c5
vcomiss xmm2, dword [r12 + 0x68]
jae 0x1400808c5
vcomiss xmm0, xmm3
jae 0x1400808c5
mov ecx, 0x25
call fcn.140081c10
test al, al
je 0x1400808c5
mov rdi, qword [0x1401acd00]
lea rdx, str._IMWINDOW
mov r8d, 0x20
lea rcx, [rdi + 0x4f40]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
lea rcx, [rdi + 0x4fa8]
mov byte [rdi + 0x4f60], 0
xor edx, edx
call fcn.1400a72c0
lea rax, [rdi + 0x4fb8]
xor edx, edx
mov qword [rdi + 0x4fc0], rdx
mov qword [rdi + 0x4f28], rax
mov qword [rax], r12
mov dword [rdi + 0x4f30], 8
mov eax, dword [rdi + 0x4098]
mov dword [rdi + 0x4f3c], eax
mov rbx, qword [0x1401acd00]
test byte [rbx + 0x4f1c], 1
jne 0x140080836
call fcn.14008d8c0
cmp dword [rbx + 0x4f3c], 0xffffffff
jne 0x140080844
call fcn.140083690
lea rcx, [r13 + 0x3ae0]
mov byte [rbx + 0x4f19], 0
call fcn.140083b00
lea rcx, [r13 + 0x3cf0]
mov dword [r12 + 0x440], eax
call fcn.140083b00
lea rcx, [r13 + 0x3d00]
mov dword [r12 + 0x444], eax
call fcn.140083b00
lea rcx, [r13 + 0x3d10]
mov dword [r12 + 0x448], eax
call fcn.140083b00
lea rcx, [r13 + 0x3d20]
mov dword [r12 + 0x44c], eax
call fcn.140083b00
lea rcx, [r13 + 0x3d30]
mov dword [r12 + 0x450], eax
call fcn.140083b00
mov dword [r12 + 0x454], eax
xor edi, edi
cmp byte [r14 + 0x4f18], 0
je 0x140080905
bt r15d, 0x13
jb 0x140080905
mov rax, qword [r14 + 0x4158]
test rax, rax
je 0x1400808eb
cmp qword [rax + 0x3d0], rsi
je 0x140080905
cmp rsi, qword [rsi + 0x3d0]
jne 0x140080905
test dword [rsi + 0x14], 0x20000000
jne 0x140080905
mov rcx, rsi
call fcn.140081380
test byte [rsi + 0x43d], 1
je 0x140080954
mov r8, qword [0x1401acd00]
mov edx, dword [rsi + 0x46c]
mov ecx, dword [r14 + 0x4abc]
mov eax, dword [rsi + 0xb4]
mov dword [r8 + 0x4ae8], eax
mov dword [r8 + 0x4aec], ecx
mov dword [r8 + 0x4af0], edx
vbroadcastf128 ymm0, xmmword [rsi + 0x470]
vmovups ymmword [r8 + 0x4af4], ymm0
jmp 0x140080a26
mov rax, qword [0x1401acd00]
vmovss xmm6, dword [rbp - 0x78]
vmovss xmm2, dword [rax + 0x3a5c]
vmovss xmm1, dword [rax + 0xe48]
vsubss xmm0, xmm6, xmm2
vcomiss xmm1, xmm0
jb 0x1400809ea
vmovss xmm4, dword [rax + 0x3a60]
vmovss xmm7, dword [rbp - 0x74]
vmovss xmm3, dword [rax + 0xe4c]
vsubss xmm0, xmm7, xmm4
vcomiss xmm3, xmm0
jb 0x1400809ea
vmovss xmm5, dword [rbp - 0x70]
vaddss xmm0, xmm2, xmm5
vcomiss xmm1, xmm0
jae 0x1400809ea
vmovss xmm1, dword [rbp - 0x6c]
vaddss xmm0, xmm4, xmm1
vcomiss xmm3, xmm0
jae 0x1400809ea
mov rax, qword [rax + 0x4c98]
vmovss xmm2, dword [rax + 0xc]
vaddss xmm0, xmm2, dword [rax + 0x14]
vcomiss xmm7, xmm0
vmovss xmm3, dword [rax + 8]
vaddss xmm4, xmm3, dword [rax + 0x10]
jae 0x1400809ea
vcomiss xmm1, xmm2
jbe 0x1400809ea
vcomiss xmm6, xmm4
jae 0x1400809ea
vcomiss xmm5, xmm3
ja 0x1400809ee
mov dword [rsp + 0x78], edi
mov eax, dword [rsi + 0xb4]
mov rdx, qword [0x1401acd00]
mov ecx, dword [r14 + 0x4abc]
mov dword [rdx + 0x4ae8], eax
mov eax, dword [rsp + 0x78]
mov dword [rdx + 0x4af0], eax
mov dword [rdx + 0x4aec], ecx
vbroadcastf128 ymm0, xmmword [rbp - 0x78]
vmovups ymmword [rdx + 0x4af4], ymm0
mov eax, dword [r14 + 0x4ac0]
vmovaps xmm7, xmmword [rsp + 0x2a0]
vmovaps xmm6, xmmword [rsp + 0x2b0]
test eax, eax
je 0x140080a58
cmp dword [rsi + 0x10], eax
je 0x140080a50
cmp dword [rsi + 0xb4], eax
jne 0x140080a58
vzeroupper
call fcn.140084430
mov ebx, dword [rsp + 0x44]
xor r12d, r12d
mov edi, dword [rsp + 0x58]
mov r13, qword [rsp + 0x2c8]
bt r15d, 0x1d
jb 0x140080a8b
lea rdx, [rsi + 0x250]
mov r8b, 1
lea rcx, [rsi + 0x248]
vzeroupper
call fcn.140099ef0
mov byte [rsi + 0xf5], 0
inc word [rsi + 0x100]
cmp edi, ebx
mov dword [r14 + 0x4b38], r12d
mov rdi, qword [rsp + 0x2d8]
mov rbx, qword [rsp + 0x318]
mov r12, qword [rsp + 0x2d0]
je 0x140080d7c
movzx eax, byte [rsi + 0x43d]
and al, 5
cmp al, 1
jne 0x140080c01
mov eax, dword [r14 + 0x4098]
cmp dword [rsi + 0x2a4], eax
jne 0x140080bfa
mov byte [rsi + 0x119], 1
jmp 0x140080c01
mov rcx, qword [rsi + 0x40]
mov rdx, qword [0x1401acd00]
test rcx, rcx
je 0x140080b09
mov eax, dword [rdx + 0x4098]
mov dword [rcx + 0x6c], eax
cmp qword [rdx + 0x4c90], rcx
je 0x140080b4b
test rcx, rcx
je 0x140080b3a
mov eax, dword [rcx + 0x28]
mov dword [rdx + 0x4c88], eax
mov rax, qword [rdx + 0x39a0]
mov qword [rdx + 0x4c90], rcx
test rax, rax
je 0x140080b4b
vzeroupper
call rax
jmp 0x140080b4b
mov dword [rdx + 0x4c88], 0x3f800000
mov qword [rdx + 0x4c90], rcx
mov rcx, qword [0x1401acd00]
mov qword [rcx + 0x4140], rsi
movsxd rax, dword [rsi + 0x1f0]
cmp eax, 0xffffffff
je 0x140080b75
imul rdx, rax, 0x250
add rdx, qword [rcx + 0x5008]
jmp 0x140080b78
mov rdx, r12
mov qword [rcx + 0x4fe0], rdx
mov rax, qword [rsi]
vmovss xmm0, dword [rax + 0x3e7c]
mov rax, qword [rsi + 0x3b0]
vmulss xmm1, xmm0, dword [rsi + 0x2d0]
vmulss xmm2, xmm1, dword [rsi + 0x2d4]
test rax, rax
je 0x140080bae
vmulss xmm2, xmm2, dword [rax + 0x2d0]
vmovss dword [rcx + 0x3e90], xmm2
vmovss dword [rcx + 0x3e78], xmm2
mov rax, qword [0x1401acd00]
cmp qword [rax + 0x4fe0], 0
mov rcx, qword [rax + 0x4140]
jne 0x140080bed
cmp qword [rcx + 0x1e8], 0
jne 0x140080bed
mov al, 1
mov byte [rcx + 0x1a0], al
jmp 0x140080a63
xor al, al
mov byte [rcx + 0x1a0], al
jmp 0x140080a63
mov byte [rsi + 0x118], 1
mov eax, r15d
and eax, 0x11000000
cmp eax, 0x1000000
jne 0x140080cd7
bt r15d, 0x17
jae 0x140080c45
cmp byte [r14 + 0x4d4c], 0
je 0x140080c45
mov rcx, qword [r14 + 0x4cf0]
test rcx, rcx
je 0x140080c45
mov rax, qword [rsi + 0x3e0]
cmp qword [rcx + 0x3e0], rax
jne 0x140080c45
mov al, 1
jmp 0x140080c47
xor al, al
cmp byte [r14 + 0x6220], 0
jne 0x140080c9b
test al, al
jne 0x140080c9b
vmovss xmm0, dword [rsi + 0x230]
vcomiss xmm0, dword [rsi + 0x228]
jbe 0x140080c79
vmovss xmm0, dword [rsi + 0x234]
vcomiss xmm0, dword [rsi + 0x22c]
ja 0x140080c9b
cmp byte [rsi + 0x110], 0
jg 0x140080c94
cmp byte [rsi + 0x111], 0
jg 0x140080c94
mov byte [rsi + 0x118], 1
jmp 0x140080c9b
mov byte [rsi + 0x119], 1
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x140080cd7
cmp byte [rax + 0xf6], 0
jne 0x140080cb7
cmp byte [rax + 0x118], 0
jle 0x140080cbe
mov byte [rsi + 0x118], 1
cmp byte [rax + 0xf6], 0
jne 0x140080cd0
cmp byte [rax + 0x119], 0
jle 0x140080cd7
mov byte [rsi + 0x119], 1
vcomiss xmm15, dword [r14 + 0x39f8]
jb 0x140080ce9
mov byte [rsi + 0x118], 1
cmp byte [rsi + 0x118], 0
jg 0x140080d09
cmp byte [rsi + 0x119], 0
jg 0x140080d09
xor cl, cl
cmp byte [rsi + 0x11a], cl
jg 0x140080d0b
xor al, al
jmp 0x140080d0d
mov cl, 1
mov al, 1
mov byte [rsi + 0xfa], al
movzx eax, byte [rsi + 0x11b]
test al, al
jle 0x140080d2d
dec al
mov byte [rsi + 0x11b], al
or dword [rsi + 0x14], 0x30200
cmp byte [rsi + 0xf6], 0
jne 0x140080d43
cmp byte [rsi + 0xf3], 0
je 0x140080d43
test cl, cl
je 0x140080d75
cmp byte [rsi + 0x110], 0
jg 0x140080d75
cmp byte [rsi + 0x111], 0
jg 0x140080d75
cmp byte [rsi + 0x119], 0
jg 0x140080d75
mov byte [rsi + 0xf8], 1
movzx eax, word [rsi + 0x19c]
mov word [rsi + 0x19e], ax
jmp 0x140080d7c
mov byte [rsi + 0xf8], 0
cmp byte [rsi + 0xfb], 0
vmovaps xmm15, xmmword [rsp + 0x220]
mov r15, qword [rsp + 0x2c0]
jne 0x140080dec
cmp byte [r14 + 0x81], 0
je 0x140080da7
cmp qword [rbp - 0x80], 0
je 0x140080dc2
cmp byte [r14 + 0x82], 0
je 0x140080dec
movsx eax, byte [r14 + 0x629c]
cmp eax, dword [r14 + 0x4110]
jne 0x140080dec
movzx eax, byte [rsi + 0x110]
test al, al
jle 0x140080dd5
inc al
mov byte [rsi + 0x110], al
movzx eax, byte [rsi + 0x111]
test al, al
jle 0x140080de8
inc al
mov byte [rsi + 0x111], al
xor al, al
jmp 0x140080df6
cmp byte [rsi + 0xf8], 0
sete al
vzeroupper
mov rcx, qword [rbp + 0x118]
xor rcx, rsp
call fcn.1400fd350
add rsp, 0x2e0
pop r14
pop rsi
pop rbp
ret