Function at 0x1400a55b0
Capabilities:
Hash data with crc32

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push r14
push r15
lea rbp, [rax - 0xd8]
sub rsp, 0x1b0
mov r14, qword [0x140317818]
mov ebx, r8d
vmovaps xmmword [rax - 0xc8], xmm13
mov r8d, 0xffffffff
mov qword [rax - 0x30], rdi
mov rdi, rcx
mov qword [rax - 0x38], r12
mov ecx, r8d
mov qword [rax - 0x40], r13
movzx r10d, byte [rdi]
lea r9, [rdi + 1]
test r10b, r10b
je 0x1400a5640
lea r11, [0x1401e13e0]
nop
cmp r10b, 0x23
jne 0x1400a5623
cmp byte [r9], r10b
jne 0x1400a5623
cmp byte [r9 + 1], r10b
cmove ecx, r8d
movzx edx, cl
movzx eax, r10b
movzx r10d, byte [r9]
xor rdx, rax
shr ecx, 8
inc r9
xor ecx, dword [r11 + rdx*4]
test r10b, r10b
jne 0x1400a5610
not ecx
call fcn.1400b4a10
test rax, rax
mov qword [rbp - 0x48], rax
mov rsi, rax
mov r12, rax
sete al
mov byte [rbp + 0xf8], al
test rsi, rsi
jne 0x1400a566f
mov edx, ebx
mov rcx, rdi
call fcn.1400aab80
mov rsi, rax
mov r13d, dword [r14 + 0x1c90]
mov ecx, ebx
mov r15d, ebx
mov dword [rsp + 0x5c], r13d
or r15d, 6
and ecx, 0xc0200
cmp ecx, 0xc0200
cmovne r15d, ebx
cmp dword [r14 + 0x1ce8], 0
mov ebx, dword [rsi + 0x2b8]
mov dword [rbp - 0x58], ebx
jne 0x1400a56b5
cmp byte [r14 + 0x1ca1], 0
je 0x1400a56b5
mov al, 1
jmp 0x1400a56b7
xor al, al
mov byte [rsi + 0xd7], al
lea eax, [r13 - 1]
cmp ebx, eax
setl dl
mov byte [rsp + 0x41], dl
bt r15d, 0x1a
jae 0x1400a5701
movsxd rax, dword [r14 + 0x1ee0]
lea rax, [rax + rax*2]
shl rax, 4
add rax, qword [r14 + 0x1ed8]
cmp rsi, qword [rax + 8]
mov eax, dword [rax]
setne cl
cmp dword [rsi + 0xe4], eax
setne al
or cl, al
or dl, cl
mov byte [rsp + 0x41], dl
mov byte [rsi + 0xd5], dl
test dl, dl
je 0x1400a5727
or byte [rsi + 0xf4], 8
or byte [rsi + 0xf5], 8
or byte [rsi + 0xf6], 8
or byte [rsi + 0xf7], 8
mov eax, dword [rsi + 0xc]
xor edi, edi
cmp ebx, r13d
je 0x1400a5773
mov dword [rsi + 0x10], eax
mov dword [rsi + 0xc], r15d
mov dword [rsi + 0x2b8], r13d
vmovsd xmm0, qword [r14 + 0x1c88]
mov word [rsi + 0xdc], di
vcvtpd2ps xmm0, xmm0
vmovss dword [rsi + 0x2c0], xmm0
movzx eax, word [r14 + 0x1d08]
inc dword [r14 + 0x1d08]
mov word [rsi + 0xde], ax
jmp 0x1400a5776
mov r15d, eax
test dword [r14 + 0x1dc0], 0x200
je 0x1400a5799
mov r8d, dword [r14 + 0x1dd0]
mov rcx, rsi
mov edx, dword [r14 + 0x1e28]
call fcn.1400c14b0
cmp ebx, r13d
je 0x1400a57f2
cmp dword [rsi + 0x458], edi
jne 0x1400a57d7
cmp qword [rsi + 0x448], rdi
jne 0x1400a57d7
mov rax, qword [0x140317818]
cmp byte [rax + 0xc9], dil
jne 0x1400a57c5
cmp byte [rsi + 0x30], dil
je 0x1400a57f2
test dword [rsi + 0xc], 0x1200001
jne 0x1400a57f2
cmp byte [rsi + 0xd7], dil
jne 0x1400a57f2
mov rdx, qword [rbp + 0xe8]
mov rcx, rsi
call fcn.1400a8900
mov r15d, dword [rsi + 0xc]
and dword [r14 + 0x1dc0], 0xffffffef
test byte [rsi + 0x429], 1
je 0x1400a580b
mov rax, qword [rsi + 0x448]
mov rax, qword [rax + 0x80]
jmp 0x1400a582a
movsxd rax, dword [r14 + 0x1ce8]
test eax, eax
jne 0x1400a581b
mov rax, rdi
jmp 0x1400a582a
mov rcx, rax
mov rax, qword [r14 + 0x1cf0]
mov rax, qword [rax + rcx*8 - 8]
mov qword [rbp - 0x50], rax
cmp ebx, r13d
je 0x1400a5840
test r15d, 0x5000000
cmovne rdi, rax
jmp 0x1400a5847
mov rdi, qword [rsi + 0x3c8]
lea rbx, [rsi + 0x108]
mov qword [rbp - 0x80], rdi
cmp dword [rbx], 0
jne 0x1400a5879
cmp dword [rbx + 4], 0
jne 0x1400a586a
mov edx, 8
mov rcx, rbx
call fcn.1400c6560
movsxd rdx, dword [rbx]
mov eax, dword [rsi + 8]
mov rcx, qword [rbx + 8]
mov dword [rcx + rdx*4], eax
inc dword [rbx]
lea rbx, [r14 + 0x1ce8]
mov ecx, dword [rbx + 4]
mov r8d, dword [rbx]
cmp r8d, ecx
jne 0x1400a58b4
inc r8d
test ecx, ecx
je 0x1400a589d
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1400a58a2
mov eax, 8
cmp eax, r8d
mov rcx, rbx
cmovg r8d, eax
mov edx, r8d
call fcn.1400c6600
movsxd rcx, dword [rbx]
mov rax, qword [rbx + 8]
mov qword [rax + rcx*8], rsi
inc dword [rbx]
xor ebx, ebx
mov qword [r14 + 0x1d18], rsi
mov rdx, qword [0x140317818]
mov rax, qword [rdx + 0x1d18]
movzx ecx, word [rax + 0x108]
mov word [rsi + 0x230], cx
movzx eax, word [rdx + 0x1e70]
mov word [rsi + 0x232], ax
movzx eax, word [rdx + 0x1e80]
mov word [rsi + 0x234], ax
movzx eax, word [rdx + 0x1e90]
mov word [rsi + 0x236], ax
movzx eax, word [rdx + 0x1ea0]
mov word [rsi + 0x238], ax
movzx eax, word [rdx + 0x1ec0]
mov word [rsi + 0x23a], ax
movzx eax, word [rdx + 0x1ee0]
mov word [rsi + 0x23c], ax
mov qword [r14 + 0x1d18], rbx
bt r15d, 0x1a
jae 0x1400a5975
lea rcx, [r14 + 0x1ee0]
movsxd rax, dword [rcx]
lea rbx, [rax + rax*2]
shl rbx, 4
add rbx, qword [r14 + 0x1ed8]
mov rdx, rbx
mov qword [rbx + 8], rsi
call fcn.1400c6190
mov eax, dword [rbx]
mov dword [rsi + 0xe4], eax
mov ebx, dword [rbp - 0x58]
cmp ebx, r13d
je 0x1400a598b
mov r8, rdi
mov edx, r15d
mov rcx, rsi
call fcn.1400c54c0
xor dl, dl
xor r13b, r13b
test byte [r14 + 0x1dc0], 1
mov byte [rsp + 0x40], dl
mov byte [rbp + 0xf0], dl
je 0x1400a5a39
movsx ecx, byte [rsi + 0xf4]
mov r8d, dword [r14 + 0x1dc4]
test r8d, ecx
setne dl
mov byte [rsp + 0x40], dl
test r8d, ecx
je 0x1400a5a2a
vmovss xmm1, dword [r14 + 0x1de0]
vmovss xmm0, dword [r14 + 0x1ddc]
vmulss xmm2, xmm0, xmm0
vmulss xmm1, xmm1, xmm1
vaddss xmm3, xmm2, xmm1
vcomiss xmm3, dword [0x1401e1f78]
jbe 0x1400a5a2a
vmovsd xmm0, qword [r14 + 0x1dd4]
mov eax, dword [rsi + 0xf4]
and ecx, 0xf1
and eax, 0xffffff00
vmovsd qword [rsi + 0xf8], xmm0
vmovsd xmm1, qword [r14 + 0x1ddc]
or ecx, eax
mov dword [rsi + 0xf4], ecx
vmovsd qword [rsi + 0x100], xmm1
jmp 0x1400a5a39
lea rdx, [r14 + 0x1dd4]
mov rcx, rsi
call fcn.1400c1560
test byte [r14 + 0x1dc0], 2
vxorps xmm13, xmm13, xmm13
je 0x1400a5aa1
movsx eax, byte [rsi + 0xf5]
mov r8d, dword [r14 + 0x1dc8]
and eax, r8d
je 0x1400a5a70
vmovss xmm0, dword [r14 + 0x1de4]
vcomiss xmm0, xmm13
jbe 0x1400a5a70
mov r13b, 1
jmp 0x1400a5a74
test eax, eax
je 0x1400a5a8b
vmovss xmm0, dword [r14 + 0x1de8]
vcomiss xmm0, xmm13
mov byte [rbp + 0xf0], 1
ja 0x1400a5a92
mov byte [rbp + 0xf0], 0
lea rdx, [r14 + 0x1de4]
mov rcx, rsi
call fcn.1400c1680
test byte [r14 + 0x1dc0], 0x80
je 0x1400a5ae9
vmovss xmm0, dword [r14 + 0x1df4]
xor eax, eax
vcomiss xmm0, xmm13
jb 0x1400a5acb
vmovss dword [rsi + 0xac], xmm0
mov dword [rsi + 0xb4], eax
vmovss xmm0, dword [r14 + 0x1df8]
vcomiss xmm0, xmm13
jb 0x1400a5ae9
vmovss dword [rsi + 0xb0], xmm0
mov dword [rsi + 0xb8], eax
test byte [r14 + 0x1dc0], 4
mov edi, dword [rsp + 0x5c]
je 0x1400a5b07
vmovsd xmm0, qword [r14 + 0x1dec]
vmovsd qword [rsi + 0x78], xmm0
jmp 0x1400a5b11
cmp ebx, edi
je 0x1400a5b11
xor eax, eax
mov qword [rsi + 0x78], rax
test dword [r14 + 0x1dc0], 0x400
je 0x1400a5b2c
vmovups ymm0, ymmword [r14 + 0x1e2c]
vmovups ymmword [rsi + 0x14], ymm0
test byte [r14 + 0x1dc0], 8
je 0x1400a5b7d
mov ecx, dword [r14 + 0x1dcc]
movzx edx, byte [r14 + 0x1dfd]
test ecx, ecx
je 0x1400a5b54
movsx eax, byte [rsi + 0xf6]
test ecx, eax
je 0x1400a5b7d
movzx ecx, byte [rsi + 0xf6]
mov eax, dword [rsi + 0xf4]
and ecx, 0xf1
shl ecx, 0x10
and eax, 0xff00ffff
or ecx, eax
mov byte [rsi + 0xd2], dl
mov dword [rsi + 0xf4], ecx
test byte [r14 + 0x1dc0], 0x20
je 0x1400a5b92
mov rcx, rsi
vzeroupper
call fcn.1400b4c60
cmp byte [rsi + 0xd5], 0
je 0x1400a5bb7
and byte [rsi + 0xf4], 0xf7
and byte [rsi + 0xf5], 0xf7
and byte [rsi + 0xf6], 0xf7
and byte [rsi + 0xf7], 0xf7
vmovaps xmmword [rsp + 0x180], xmm6
mov r8d, 1
vmovaps xmmword [rsp + 0x170], xmm7
vmovaps xmmword [rsp + 0x160], xmm8
cmp ebx, edi
je 0x1400a7ecb
vmovaps xmmword [rsp + 0x150], xmm9
mov eax, r15d
vmovaps xmmword [rsp + 0x140], xmm10
and eax, 0x3000000
cmp qword [rbp + 0xe8], 0
vmovaps xmmword [rsp + 0x130], xmm11
vmovaps xmmword [rsp + 0x120], xmm12
vmovaps xmmword [rsp + 0x100], xmm14
mov byte [rsi + 0xcf], r8b
vmovaps xmmword [rsp + 0xf0], xmm15
mov dword [rsp + 0x58], eax
setne al
mov byte [rsi + 0xd8], al
mov dword [rsi + 0x290], 0xff7fffff
mov dword [rsi + 0x294], 0xff7fffff
mov dword [rsi + 0x298], 0x7f7fffff
mov dword [rsi + 0x29c], 0x7f7fffff
mov ecx, dword [rsi + 0x10c]
cmp ecx, r8d
jge 0x1400a5c9f
test ecx, ecx
je 0x1400a5c7c
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1400a5c81
mov eax, 8
cmp eax, r8d
lea rcx, [rsi + 0x108]
mov edx, r8d
cmovg edx, eax
vzeroupper
call fcn.1400c6560
mov r8d, 1
mov dword [rsi + 0x108], r8d
mov rcx, qword [rsi + 0x2f8]
vzeroupper
call fcn.1400d0c50
cmp byte [rsi + 0x428], 0
mov dword [rsi + 0x1f0], 0xffffffff
je 0x1400a5d7f
mov rcx, qword [rsi + 0x2f8]
mov edx, dword [rsi + 0x420]
add rcx, 0x10
mov byte [rsi + 0x428], 0
call fcn.1400c64c0
mov rbx, qword [rsi + 0x2f8]
movsxd rdi, dword [rsi + 0x424]
cmp edi, dword [rbx + 0x24]
jle 0x1400a5d76
mov rax, qword [0x140317818]
test rax, rax
je 0x1400a5d0e
inc dword [rax + 0x3b0]
mov rdx, qword [0x140317828]
lea rcx, [rdi + rdi*4]
shl rcx, 2
call qword [str.___n_]
mov rdx, qword [rbx + 0x28]
mov r12, rax
test rdx, rdx
je 0x1400a5d6b
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]
test rcx, rcx
je 0x1400a5d5e
mov rax, qword [0x140317818]
test rax, rax
je 0x1400a5d5e
dec dword [rax + 0x3b0]
mov rdx, qword [0x140317828]
call qword [str.p__n_]
mov qword [rbx + 0x28], r12
mov r12, qword [rbp - 0x48]
mov dword [rbx + 0x24], edi
xor eax, eax
mov qword [rsi + 0x420], rax
mov rax, qword [rsi + 0x38]
test rax, rax
je 0x1400a5d91
cmp qword [rax + 0x88], rsi
je 0x1400a5db5
test byte [rsi + 0x429], 1
jne 0x1400a5db5
cmp qword [r14 + 0x2090], 0
je 0x1400a5e7f
test dword [rsi + 0xc], 0x80000
jne 0x1400a5e7f
test r12, r12
je 0x1400a5e7f
mov r10, qword [rbp + 0xe0]
mov r9, qword [rsi]
mov rax, r10
mov r8, r9
sub r8, r10
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400a5de4
inc rax
test ecx, ecx
jne 0x1400a5dd1
test edx, edx
je 0x1400a5e7f
movsxd rdi, dword [rsi + 0x90]
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp byte [r10 + rbx], 0
jne 0x1400a5e00
inc rbx
cmp rdi, rbx
jae 0x1400a5e68
test r9, r9
je 0x1400a5e29
mov rax, qword [0x140317818]
test rax, rax
je 0x1400a5e29
dec dword [rax + 0x3b0]
mov rdx, qword [0x140317828]
mov rcx, r9
call qword [str.p__n_]
mov rax, qword [0x140317818]
test rax, rax
je 0x1400a5e4b
inc dword [rax + 0x3b0]
mov rdx, qword [0x140317828]
mov rcx, rbx
call qword [str.___n_]
mov r10, qword [rbp + 0xe0]
mov rdi, rbx
mov r9, rax
mov r8, rbx
mov rdx, r10
mov rcx, r9
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsi], rax
mov dword [rsi + 0x90], edi
movzx edi, byte [rsi + 0xf1]
lea r8, [rsi + 0x70]
lea rdx, [rsi + 0x68]
mov rcx, rsi
call fcn.1400a9cf0
movzx eax, byte [rsi + 0xf0]
test al, al
jle 0x1400a5ea9
dec al
mov byte [rsi + 0xf0], al
movzx eax, byte [rsi + 0xf1]
test al, al
jle 0x1400a5ebc
dec al
mov byte [rsi + 0xf1], al
movzx eax, byte [rsi + 0xf2]
test al, al
jle 0x1400a5ecf
dec al
mov byte [rsi + 0xf2], al
test r12, r12
jne 0x1400a5ee9
test r13b, r13b
je 0x1400a5ee2
cmp byte [rbp + 0xf0], r12b
jne 0x1400a5ee9
mov byte [rsi + 0xf1], 1
movzx r12d, byte [rsp + 0x41]
test r12b, r12b
je 0x1400a5f3f
test r15d, 0x6000000
je 0x1400a5f3f
mov byte [rsi + 0xf1], 1
test r15b, 0x40
je 0x1400a5f3f
xor r15d, r15d
test r13b, r13b
jne 0x1400a5f1a
mov dword [rsi + 0x60], r15d
mov dword [rsi + 0x58], r15d
movzx ebx, byte [rbp + 0xf0]
test bl, bl
jne 0x1400a5f2d
mov dword [rsi + 0x64], r15d
mov dword [rsi + 0x5c], r15d
mov qword [rsi + 0x70], 0
mov qword [rsi + 0x68], 0
jmp 0x1400a5f49
movzx ebx, byte [rbp + 0xf0]
xor r15d, r15d
call fcn.1400c3830
mov rcx, qword [rsi + 0x38]
mov rdx, qword [0x140317818]
test rcx, rcx
je 0x1400a5f67
mov eax, dword [rdx + 0x1c90]
mov dword [rcx + 0x64], eax
cmp qword [rdx + 0x1f08], rcx
je 0x1400a5fa6
test rcx, rcx
je 0x1400a5f95
mov eax, dword [rcx + 0x28]
mov dword [rdx + 0x1f00], eax
mov rax, qword [rdx + 0x15d8]
mov qword [rdx + 0x1f08], rcx
test rax, rax
je 0x1400a5fa6
call rax
jmp 0x1400a5fa6
mov dword [rdx + 0x1f00], 0x3f800000
mov qword [rdx + 0x1f08], rcx
test dword [r14 + 8], 0x8000
vmovss xmm14, dword [0x1401e1fdc]
je 0x1400a5fc3
mov rax, qword [rsi + 0x38]
vmovss xmm0, dword [rax + 0x28]
jmp 0x1400a5fc8
vmovaps xmm0, xmm14
vmovss dword [rsi + 0x2ec], xmm0
mov rcx, qword [0x140317818]
mov qword [rcx + 0x1d18], rsi
movsxd rax, dword [rsi + 0x1f0]
cmp eax, 0xffffffff
je 0x1400a5ffa
imul rdx, rax, 0x258
add rdx, qword [rcx + 0x2188]
jmp 0x1400a5ffd
mov rdx, r15
mov qword [rcx + 0x2178], rdx
mov rax, qword [0x140317818]
vmovss xmm0, dword [rax + 0x1a84]
mov rax, qword [rsi + 0x3c8]
vmulss xmm1, xmm0, dword [rsi + 0x2e8]
vmulss xmm2, xmm1, dword [rsi + 0x2ec]
test rax, rax
je 0x1400a6037
vmulss xmm2, xmm2, dword [rax + 0x2e8]
vmovss dword [rcx + 0x1a98], xmm2
vmovss dword [rcx + 0x1a80], xmm2
mov r15d, dword [rsi + 0xc]
bt r15d, 0x18
jae 0x1400a605d
vmovss xmm0, dword [r14 + 0x1664]
jmp 0x1400a6081
test r15d, 0x6000000
je 0x1400a6078
bt r15d, 0x1b
jb 0x1400a6078
vmovss xmm0, dword [r14 + 0x166c]
jmp 0x1400a6081
vmovss xmm0, dword [r14 + 0x1648]
mov rax, rsi
vmovss dword [rax + 0x8c], xmm0
test byte [rsi + 0x429], 1
jne 0x1400a60db
mov eax, r15d
and eax, 0x5010000
cmp eax, 0x1000000
jne 0x1400a60db
vucomiss xmm0, xmm13
jp 0x1400a60db
jne 0x1400a60db
bt r15d, 0xa
jae 0x1400a60bf
vmovss xmm0, dword [r14 + 0x1640]
jmp 0x1400a60c4
vmovaps xmm0, xmm13
vunpcklps xmm0, xmm13, xmm0
vshufps xmm2, xmm0, xmm0, 0x55
vmovsd qword [rsp + 0x60], xmm0
vmovss xmm0, dword [rsp + 0x60]
jmp 0x1400a60ed
vmovss xmm0, dword [r14 + 0x163c]
vmovss xmm2, dword [r14 + 0x1640]
mov rax, rsi
vmovss dword [rax + 0x80], xmm0
vmovss dword [rax + 0x84], xmm2
vmovss xmm0, dword [rax + 0x80]
vmaxss xmm1, xmm0, dword [r14 + 0x1680]
vmaxss xmm2, xmm1, dword [r14 + 0x1e4c]
vmovss dword [rsi + 0x19c], xmm2
mov eax, dword [r14 + 0x1e50]
mov dword [rsi + 0x1a0], eax
test r15b, 0x21
jne 0x1400a61b2
test byte [rsi + 0x429], 1
jne 0x1400a61b2
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400c2280
cmp qword [r14 + 0x1d20], rsi
jne 0x1400a618f
cmp dword [r14 + 0x1d58], 0
jne 0x1400a618f
cmp dword [r14 + 0x1d5c], 0
jne 0x1400a618f
mov r8b, 1
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x48]
call fcn.1400b70e0
test al, al
je 0x1400a618f
cmp byte [r14 + 0x41d], 0
je 0x1400a618f
mov byte [rsi + 0xd3], 1
cmp byte [rsi + 0xd3], 0
je 0x1400a61b9
cmp byte [rsi + 0xd2], 0
mov rcx, rsi
sete al
mov byte [rsi + 0xd2], al
call fcn.1400b7fb0
jmp 0x1400a61b9
mov byte [rsi + 0xd2], 0
lea r8, [rsi + 0x70]
mov byte [rsi + 0xd3], 0
mov rdx, rsi
lea rcx, [rsp + 0x60]
call fcn.1400a9a20
movzx ecx, byte [rbp + 0xf8]
mov byte [rbp + 0xf0], cl
test r15b, 0x40
je 0x1400a6223
cmp byte [rsi + 0xd2], 0
jne 0x1400a6223
test r13b, r13b
jne 0x1400a6204
vmovss xmm0, dword [rsp + 0x60]
vmovss dword [rsi + 0x60], xmm0
mov byte [rbp + 0xf8], 1
test bl, bl
jne 0x1400a62cb
vmovss xmm0, dword [rsp + 0x64]
vmovss dword [rsi + 0x64], xmm0
mov byte [rbp + 0xf0], 1
jmp 0x1400a62cb
movzx eax, byte [rsi + 0xe8]
test al, al
jg 0x1400a623b
cmp byte [rsi + 0xe9], 0
jle 0x1400a62cb
test r13b, r13b
jne 0x1400a626c
test al, al
jle 0x1400a626c
cmp byte [rsi + 0xeb], r13b
je 0x1400a625a
vmovss xmm0, dword [rsi + 0x60]
vmaxss xmm1, xmm0, dword [rsp + 0x60]
jmp 0x1400a6260
vmovss xmm1, dword [rsp + 0x60]
vmovss dword [rsi + 0x60], xmm1
mov byte [rbp + 0xf8], 1
test bl, bl
jne 0x1400a629f
cmp byte [rsi + 0xe9], bl
jle 0x1400a629f
cmp byte [rsi + 0xeb], bl
je 0x1400a628d
vmovss xmm0, dword [rsi + 0x64]
vmaxss xmm1, xmm0, dword [rsp + 0x64]
jmp 0x1400a6293
vmovss xmm1, dword [rsp + 0x64]
vmovss dword [rsi + 0x64], xmm1
mov byte [rbp + 0xf0], 1
cmp byte [rsi + 0xd2], 0
jne 0x1400a62cb
test dword [rsi + 0xc], 0x100
mov rcx, qword [0x140317818]
jne 0x1400a62cb
vcomiss xmm13, dword [rcx + 0x31fc]
jb 0x1400a62cb
mov eax, dword [rcx + 0x1c]
mov dword [rcx + 0x31fc], eax
lea r8, [rsi + 0x60]
mov rdx, rsi
lea rcx, [rsp + 0x78]
call fcn.1400a9e80
cmp byte [rsi + 0xd2], 0
vmovss xmm3, dword [rax]
vmovss xmm0, dword [rax + 4]
vmovss dword [rsi + 0x60], xmm3
vmovss dword [rsi + 0x64], xmm0
je 0x1400a6371
bt r15d, 0x18
jb 0x1400a6371
test byte [rsi + 0xc], 1
mov rcx, qword [0x140317818]
je 0x1400a6313
vmovaps xmm1, xmm13
jmp 0x1400a634f
vmovss xmm0, dword [rcx + 0x1a84]
mov rax, qword [rsi + 0x3c8]
vmulss xmm1, xmm0, dword [rsi + 0x2e8]
vmulss xmm2, xmm1, dword [rsi + 0x2ec]
test rax, rax
je 0x1400a633f
vmulss xmm2, xmm2, dword [rax + 0x2e8]
vmovss xmm0, dword [rcx + 0x1674]
vaddss xmm1, xmm0, xmm0
vaddss xmm1, xmm1, xmm2
vaddss xmm0, xmm3, dword [rsi + 0x50]
vaddss xmm1, xmm1, dword [rsi + 0x54]
vsubss xmm0, xmm0, dword [rsi + 0x50]
vsubss xmm1, xmm1, dword [rsi + 0x54]
vmovss dword [rsp + 0x78], xmm0
vmovss dword [rsp + 0x7c], xmm1
jmp 0x1400a637c
vmovsd xmm0, qword [rsi + 0x60]
vmovsd qword [rsp + 0x78], xmm0
mov edx, dword [rsi + 0xc]
lea rax, [rsp + 0x78]
vmovsd xmm0, qword [rax]
vmovsd qword [rsi + 0x58], xmm0
mov rax, qword [0x140317818]
test dl, 1
je 0x1400a63a0
vmovaps xmm4, xmm13
jmp 0x1400a63dc
vmovss xmm0, dword [rax + 0x1a84]
mov rcx, qword [rsi + 0x3c8]
vmulss xmm1, xmm0, dword [rsi + 0x2e8]
vmulss xmm2, xmm1, dword [rsi + 0x2ec]
test rcx, rcx
je 0x1400a63cc
vmulss xmm2, xmm2, dword [rcx + 0x2e8]
vmovss xmm0, dword [rax + 0x1674]
vaddss xmm1, xmm0, xmm0
vaddss xmm4, xmm1, xmm2
bt edx, 0xa
jae 0x1400a6428
vmovss xmm0, dword [rax + 0x1a84]
mov rcx, qword [rsi + 0x3c8]
vmulss xmm1, xmm0, dword [rsi + 0x2e8]
vmulss xmm2, xmm1, dword [rsi + 0x2ec]
test rcx, rcx
je 0x1400a640e
vmulss xmm2, xmm2, dword [rcx + 0x2e8]
vmovss xmm0, dword [rax + 0x1674]
vaddss xmm1, xmm2, dword [rsi + 0x1a0]
vaddss xmm0, xmm0, xmm0
vaddss xmm3, xmm1, xmm0
jmp 0x1400a642d
vmovaps xmm3, xmm13
vaddss xmm12, xmm3, xmm4
test r12b, r12b
movzx r12d, byte [rsp + 0x40]
vmovss dword [rsp + 0x78], xmm12
je 0x1400a648b
mov eax, r15d
mov dword [rsi + 0xec], 0xffffffff
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x1400a648b
test r12b, r12b
jne 0x1400a648b
movsxd rax, dword [r14 + 0x1ee0]
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x1ee8]
add rcx, rcx
vmovss xmm0, dword [rax + rcx*8 - 0x10]
vmovss xmm1, dword [rax + rcx*8 - 0xc]
vmovss dword [rsi + 0x50], xmm0
vmovss dword [rsi + 0x54], xmm1
bt r15d, 0x18
jae 0x1400a6516
mov rdx, qword [rbp - 0x80]
lea rbx, [rdx + 0x1d0]
movzx eax, word [rbx]
mov word [rsi + 0xdc], ax
mov ecx, dword [rbx + 4]
mov r8d, dword [rbx]
cmp r8d, ecx
jne 0x1400a64e3
inc r8d
test ecx, ecx
je 0x1400a64c8
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1400a64cd
mov eax, 8
cmp eax, r8d
mov rcx, rbx
cmovg r8d, eax
mov edx, r8d
call fcn.1400c6600
mov rdx, qword [rbp - 0x80]
movsxd rcx, dword [rbx]
mov rax, qword [rbx + 8]
mov qword [rax + rcx*8], rsi
inc dword [rbx]
mov eax, dword [rsp + 0x58]
bt r15d, 0x1a
jb 0x1400a651a
test r12b, r12b
jne 0x1400a651a
cmp eax, 0x3000000
je 0x1400a651a
vmovsd xmm0, qword [rdx + 0x118]
vmovsd qword [rsi + 0x50], xmm0
jmp 0x1400a651a
mov eax, dword [rsp + 0x58]
vmovss xmm2, dword [rsi + 0xf8]
vucomiss xmm2, dword [0x1401e2050]
jp 0x1400a652e
je 0x1400a657c
cmp byte [rsi + 0xf1], 0
jne 0x1400a657c
vmovss xmm0, dword [rsi + 0x100]
vmulss xmm1, xmm0, dword [rsi + 0x58]
vmovss xmm0, dword [rsi + 0x5c]
vmulss xmm3, xmm0, dword [rsi + 0x104]
vsubss xmm2, xmm2, xmm1
vmovss xmm1, dword [rsi + 0xfc]
vmovss dword [rbp - 0x78], xmm2
vsubss xmm2, xmm1, xmm3
xor r8d, r8d
lea rdx, [rbp - 0x78]
mov rcx, rsi
vmovss dword [rbp - 0x74], xmm2
call fcn.1400c1560
jmp 0x1400a65c6
bt r15d, 0x1c
jb 0x1400a65a7
bt r15d, 0x1a
jae 0x1400a6594
test r12b, r12b
jne 0x1400a6594
test dil, dil
jg 0x1400a65a7
bt r15d, 0x19
jae 0x1400a65c6
test r12b, r12b
jne 0x1400a65c6
cmp eax, 0x3000000
je 0x1400a65c6
mov rdx, rsi
lea rcx, [rbp - 0x78]
call fcn.1400b3d50
vmovss xmm1, dword [rax + 4]
vmovss xmm0, dword [rax]
vmovss dword [rsi + 0x50], xmm0
vmovss dword [rsi + 0x54], xmm1
cmp dword [rsi + 0x4c], 0
jl 0x1400a676c
cmp byte [rsi + 0xce], 0
jne 0x1400a676c
mov rax, qword [rsi + 0x38]
test dword [rax + 4], 0x400
jne 0x1400a676c
vmovss xmm0, dword [rax + 8]
vmovss xmm1, dword [rax + 0xc]
vmovss dword [rbp - 0x78], xmm0
vaddss xmm0, xmm0, dword [rax + 0x10]
vmovss dword [rbp - 0x74], xmm1
vaddss xmm1, xmm1, dword [rax + 0x14]
vmovss dword [rbp - 0x70], xmm0
vmovss xmm0, dword [rsi + 0x50]
vmovss dword [rbp - 0x6c], xmm1
vmovss xmm1, dword [rsi + 0x54]
vmovss dword [rsp + 0x48], xmm0
vaddss xmm0, xmm0, dword [rsi + 0x58]
vmovss dword [rsp + 0x4c], xmm1
vaddss xmm1, xmm1, dword [rsi + 0x5c]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x78]
vmovss dword [rsp + 0x50], xmm0
vmovss dword [rsp + 0x54], xmm1
call fcn.1400aaa80
test al, al
jne 0x1400a676c
mov edx, dword [rsi + 8]
lea r9, [rsi + 0x58]
lea r8, [rsi + 0x50]
mov dword [rsp + reloc.WLDAP32.dll_Ordinal_32], 0x20
mov rcx, rsi
call fcn.1400a5060
mov qword [rsi + 0x38], rax
mov rcx, rax
mov rdx, qword [0x140317818]
test rax, rax
je 0x1400a668f
mov eax, dword [rdx + 0x1c90]
mov dword [rcx + 0x64], eax
cmp qword [rdx + 0x1f08], rcx
je 0x1400a66ce
test rcx, rcx
je 0x1400a66bd
mov eax, dword [rcx + 0x28]
mov dword [rdx + 0x1f00], eax
mov rax, qword [rdx + 0x15d8]
mov qword [rdx + 0x1f08], rcx
test rax, rax
je 0x1400a66ce
call rax
jmp 0x1400a66ce
mov dword [rdx + 0x1f00], 0x3f800000
mov qword [rdx + 0x1f08], rcx
test dword [r14 + 8], 0x8000
je 0x1400a66e3
mov rax, qword [rsi + 0x38]
vmovss xmm0, dword [rax + 0x28]
jmp 0x1400a66e8
vmovaps xmm0, xmm14
vmovss dword [rsi + 0x2ec], xmm0
mov rcx, qword [0x140317818]
mov qword [rcx + 0x1d18], rsi
movsxd rax, dword [rsi + 0x1f0]
cmp eax, 0xffffffff
je 0x1400a671c
imul rdx, rax, 0x258
add rdx, qword [rcx + 0x2188]
xor ebx, ebx
jmp 0x1400a6720
xor ebx, ebx
mov edx, ebx
mov qword [rcx + 0x2178], rdx
mov rax, qword [0x140317818]
vmovss xmm0, dword [rax + 0x1a84]
mov rax, qword [rsi + 0x3c8]
vmulss xmm1, xmm0, dword [rsi + 0x2e8]
vmulss xmm2, xmm1, dword [rsi + 0x2ec]
test rax, rax
je 0x1400a675a
vmulss xmm2, xmm2, dword [rax + 0x2e8]
vmovss dword [rcx + 0x1a98], xmm2
vmovss dword [rcx + 0x1a80], xmm2
jmp 0x1400a676e
xor ebx, ebx
xor dl, dl
cmp byte [rsi + 0xce], dl
je 0x1400a697d
mov rcx, qword [rsi + 0x38]
cmp byte [rcx + 0x58], dl
je 0x1400a67b4
test dword [rsi + 0xc], 0x100
vmovsd xmm0, qword [rcx + 8]
vmovsd qword [rsi + 0x50], xmm0
mov rcx, qword [0x140317818]
jne 0x1400a67ca
vcomiss xmm13, dword [rcx + 0x31fc]
jb 0x1400a67ca
mov eax, dword [rcx + 0x1c]
mov dword [rcx + 0x31fc], eax
jmp 0x1400a67ca
mov rax, qword [rcx + 8]
cmp rax, qword [rsi + 0x50]
je 0x1400a67ca
vmovsd xmm0, qword [rsi + 0x50]
vmovsd qword [rcx + 8], xmm0
mov dl, 1
mov rcx, qword [rsi + 0x38]
cmp byte [rcx + 0x59], 0
je 0x1400a6817
test dword [rsi + 0xc], 0x100
vmovss xmm0, dword [rcx + 0x10]
vmovss xmm1, dword [rcx + 0x14]
vmovss dword [rsi + 0x60], xmm0
vmovss dword [rsi + 0x64], xmm1
vmovss dword [rsi + 0x58], xmm0
vmovss dword [rsi + 0x5c], xmm1
mov rcx, qword [0x140317818]
jne 0x1400a682d
vcomiss xmm13, dword [rcx + 0x31fc]
jb 0x1400a682d
mov eax, dword [rcx + 0x1c]
mov dword [rcx + 0x31fc], eax
jmp 0x1400a682d
mov rax, qword [rcx + 0x10]
cmp rax, qword [rsi + 0x58]
je 0x1400a682d
vmovsd xmm0, qword [rsi + 0x58]
vmovsd qword [rcx + 0x10], xmm0
mov dl, 1
mov rax, qword [rsi + 0x38]
vmovss xmm3, dword [rax + 0x118]
vmovss xmm0, dword [rax + 0x11c]
vaddss xmm1, xmm0, dword [rax + 0xc]
vaddss xmm2, xmm3, dword [rax + 8]
vmovss xmm0, dword [rax + 0x10]
vmovss dword [rax + 0x1c], xmm1
vsubss xmm1, xmm0, xmm3
vmovss xmm0, dword [rax + 0x14]
vmovss dword [rax + 0x18], xmm2
vaddss xmm2, xmm1, dword [rax + 0x120]
vsubss xmm1, xmm0, dword [rax + 0x11c]
vmaxss xmm3, xmm13, xmm2
vaddss xmm2, xmm1, dword [rax + 0x124]
vmaxss xmm0, xmm13, xmm2
vmovss dword [rax + 0x24], xmm0
vmovss dword [rax + 0x20], xmm3
test dl, dl
je 0x1400a689a
mov rcx, qword [rsi + 0x38]
call fcn.1400c40c0
mov r11, qword [rsi + 0x38]
mov r9d, r15d
shr r9d, 0x1b
mov r10d, r15d
and r9b, 1
and r10d, 0x16000000
mov ecx, dword [r11 + 4]
and ecx, 0xfffffce7
mov r8d, ecx
bts r8d, 9
bt r15d, 0x19
cmovae r8d, ecx
cmp byte [r14 + 0xcc], 0
jne 0x1400a68e0
mov edx, r8d
test r10d, r10d
je 0x1400a68eb
mov edx, r8d
test r9b, r9b
jne 0x1400a68eb
or edx, 0x10
cmp byte [r14 + 0xcd], 0
jne 0x1400a68ff
test r10d, r10d
je 0x1400a690f
or edx, 8
jmp 0x1400a6907
or edx, 8
test r10d, r10d
je 0x1400a690f
test r9b, r9b
jne 0x1400a690f
or edx, 0x60
mov eax, dword [rsi + 0x18]
test eax, eax
je 0x1400a691c
mov dword [r11 + 0x2c], eax
jmp 0x1400a6954
test r15d, 0x6000000
je 0x1400a693d
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x1400a693d
mov rax, qword [rax + 0x38]
mov rcx, qword [rsi + 0x38]
mov eax, dword [rax]
mov dword [rcx + 0x2c], eax
jmp 0x1400a6954
cmp byte [r14 + 0xce], 0
mov ecx, 0x11111111
mov rax, qword [rsi + 0x38]
cmovne ecx, ebx
mov dword [rax + 0x2c], ecx
mov eax, dword [rsi + 0x1c]
test eax, eax
je 0x1400a695d
or edx, eax
mov eax, dword [rsi + 0x20]
test eax, eax
je 0x1400a6969
andn edx, eax, edx
mov rax, qword [rsi + 0x38]
mov ecx, edx
bts ecx, 8
test r15b, 0x80
cmovne ecx, edx
mov dword [rax + 4], ecx
mov rcx, qword [rsi + 0x38]
vmovss xmm0, dword [r14 + 0x16e0]
vmaxss xmm6, xmm0, dword [r14 + 0x16e8]
vmovss xmm1, dword [r14 + 0x16dc]
vmovss xmm9, dword [rcx + 0xc]
vmovss xmm8, dword [rcx + 8]
vaddss xmm11, xmm9, dword [rcx + 0x14]
vaddss xmm10, xmm8, dword [rcx + 0x10]
vmaxss xmm7, xmm1, dword [r14 + 0x16e4]
vmovss dword [rsp + 0x70], xmm10
vmovss dword [rsp + 0x74], xmm11
vmovss dword [rsp + 0x68], xmm8
vmovss dword [rsp + 0x6c], xmm9
vmovss xmm2, dword [rcx + 0x18]
vaddss xmm0, xmm2, dword [rcx + 0x20]
vmovss xmm5, dword [rcx + 0x1c]
vaddss xmm1, xmm5, dword [rcx + 0x24]
vsubss xmm4, xmm0, xmm7
vaddss xmm0, xmm7, xmm2
vaddss xmm2, xmm6, xmm5
vsubss xmm3, xmm1, xmm6
vmovss dword [rsp + 0x4c], xmm2
vmovss dword [rsp + 0x48], xmm0
vmovss dword [rsp + 0x50], xmm4
vmovss dword [rsp + 0x54], xmm3
test r12b, r12b
jne 0x1400a6ab2
bt r15d, 0x18
jb 0x1400a6ab2
cmp byte [rsi + 0xe8], r12b
jg 0x1400a6ab2
cmp byte [rsi + 0xe9], r12b
jg 0x1400a6ab2
cmp byte [rsi + 0xce], r12b
jne 0x1400a6a5a
vsubss xmm0, xmm10, xmm8
vcomiss xmm0, xmm13
jbe 0x1400a6ab2
vsubss xmm0, xmm11, xmm9
vcomiss xmm0, xmm13
jbe 0x1400a6ab2
jmp 0x1400a6aa5
cmp dword [r14 + 0x1618], 0
jle 0x1400a6ab2
call fcn.1400b5c90
vmovss xmm2, dword [rax + 0x10]
vmovss xmm3, dword [rax + 0x14]
vaddss xmm1, xmm7, xmm2
vaddss xmm0, xmm6, xmm3
vmovss dword [rsp + 0x4c], xmm0
vaddss xmm0, xmm2, dword [rax + 0x18]
vsubss xmm2, xmm0, xmm7
vmovss dword [rsp + 0x48], xmm1
vaddss xmm1, xmm3, dword [rax + 0x1c]
vsubss xmm0, xmm1, xmm6
vmovss dword [rsp + 0x54], xmm0
vmovss dword [rsp + 0x50], xmm2
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400aa220
cmp byte [rsi + 0xce], 0
vcvttss2si eax, dword [rsi + 0x50]
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vcvttss2si eax, dword [rsi + 0x54]
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsi + 0x54], xmm0
vmovss dword [rsi + 0x50], xmm1
jne 0x1400a6b1f
test byte [rsi + 0x429], 1
jne 0x1400a6b1f
bt r15d, 0x18
jae 0x1400a6afa
vmovss xmm0, dword [r14 + 0x1660]
jmp 0x1400a6b24
mov eax, r15d
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x1400a6b14
vmovss xmm0, dword [r14 + 0x1668]
jmp 0x1400a6b24
vmovss xmm0, dword [r14 + 0x1644]
jmp 0x1400a6b24
vmovaps xmm0, xmm13
mov rax, rsi
xor r12b, r12b
vmovss dword [rax + 0x88], xmm0
cmp byte [rsp + 0x41], r12b
je 0x1400a6b6e
bt r15d, 0xc
jb 0x1400a6b6e
bt r15d, 0x1a
jae 0x1400a6b4c
mov r12b, 1
jmp 0x1400a6b6e
test byte [rsi + 0x429], 1
jne 0x1400a6b5c
bt r15d, 0x18
jb 0x1400a6b6e
bt r15d, 0x19
movzx r12d, r12b
mov ecx, 1
cmovae r12d, ecx
cmp qword [rsi + 0x450], 0
jne 0x1400a6b86
test byte [rsi + 0x429], 1
je 0x1400a6b86
xor r13b, r13b
jmp 0x1400a6b89
mov r13b, 1
vmovss xmm1, dword [r14 + 0x1a80]
vmulss xmm3, xmm1, dword [0x1401e1fe0]
vaddss xmm2, xmm14, dword [rsi + 0x88]
vmulss xmm1, xmm1, dword [0x1401e1f9c]
vpxor xmm0, xmm0, xmm0
xor r8d, r8d
mov dword [rbp - 0x78], 0xffffffff
cmp byte [r14 + 0xd3], r8b
mov edi, r8d
vmovups xmmword [rbp - 0x28], xmm0
vaddss xmm0, xmm2, xmm1
vmaxss xmm2, xmm3, xmm0
setne dil
vcvttss2si eax, xmm2
vxorps xmm0, xmm0, xmm0
inc edi
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rbp - 0x50], xmm0
test r13b, r13b
je 0x1400a6c29
cmp byte [rsi + 0xd2], r8b
jne 0x1400a6c29
lea rax, [rsp + 0x48]
mov r9d, edi
mov qword [rsp + 0x28], rax
lea r8, [rbp - 0x78]
lea rax, [rbp - 0x28]
mov rcx, rsi
lea rdx, [rsp + 0x60]
mov qword [rsp + 0x20], rax
call fcn.1400c4970
xor r8d, r8d
test al, al
je 0x1400a6c29
mov cl, 1
movzx edx, cl
jmp 0x1400a6c37
movzx ecx, byte [rbp + 0xf0]
movzx edx, byte [rbp + 0xf8]
cmp byte [rsi + 0xce], 0
movzx eax, byte [rbp - 0x78]
mov byte [rsi + 0xd9], al
je 0x1400a6d06
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x58], 0
jne 0x1400a6c62
vmovsd xmm0, qword [rsi + 0x50]
vmovsd qword [rax + 8], xmm0
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x59], 0
jne 0x1400a6c76
vmovsd xmm0, qword [rsi + 0x58]
vmovsd qword [rax + 0x10], xmm0
mov rax, qword [rsi + 0x38]
vmovss xmm3, dword [rax + 0x118]
vmovss xmm0, dword [rax + 0x11c]
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 + 0x120]
vmovss xmm0, dword [rax + 0x14]
vsubss xmm1, xmm0, dword [rax + 0x11c]
vmaxss xmm3, xmm13, xmm2
vaddss xmm2, xmm1, dword [rax + 0x124]
vmovss dword [rax + 0x20], xmm3
vmaxss xmm0, xmm13, xmm2
vmovss dword [rax + 0x24], xmm0
mov rax, qword [rsi + 0x38]
vmovss xmm3, dword [rax + 8]
vmovss xmm2, dword [rax + 0xc]
vaddss xmm1, xmm3, dword [rax + 0x10]
vaddss xmm0, xmm2, dword [rax + 0x14]
vmovss dword [rsp + 0x70], xmm1
vmovss dword [rsp + 0x74], xmm0
vmovss dword [rsp + 0x68], xmm3
vmovss dword [rsp + 0x6c], xmm2
cmp byte [rsi + 0xd2], 0
mov rax, qword [rsi + 0x38]
vmovsd xmm0, qword [rax + 8]
vmovsd qword [rsi + 0x44], xmm0
jne 0x1400a6e8d
cmp qword [rbp - 0x48], 0
vmovss xmm0, dword [rsi + 0x64]
vmovss xmm2, dword [rsi + 0x25c]
vmovss xmm5, dword [rsi + 0x60]
vsubss xmm7, xmm0, xmm12
vmovss xmm0, dword [rsi + 0x258]
vsubss xmm1, xmm0, dword [rsi + 0x250]
vsubss xmm0, xmm2, dword [rsi + 0x254]
vaddss xmm6, xmm0, dword [rsi + 0xc8]
vaddss xmm4, xmm1, dword [rsi + 0xc4]
jne 0x1400a6d77
vmovss dword [rbp - 0x38], xmm13
vmovss dword [rbp - 0x34], xmm13
lea rax, [rbp - 0x38]
jmp 0x1400a6da7
vmovss xmm0, dword [rsi + 0x80]
vmovss xmm2, dword [rsi + 0x84]
vaddss xmm0, xmm0, xmm0
vaddss xmm1, xmm0, dword [rsi + 0x68]
vaddss xmm2, xmm2, xmm2
vaddss xmm0, xmm2, dword [rsi + 0x6c]
vmovss dword [rbp - 0x2c], xmm0
vmovss dword [rbp - 0x30], xmm1
lea rax, [rbp - 0x30]
vmovss xmm8, dword [rax]
vmovss xmm3, dword [rax + 4]
movzx eax, dl
vmovd xmm0, eax
movzx eax, cl
vmovd xmm1, r8d
vpcmpeqd xmm2, xmm0, xmm1
vmovd xmm1, r8d
vmovd xmm0, eax
vblendvps xmm4, xmm5, xmm4, xmm2
vpcmpeqd xmm2, xmm0, xmm1
vblendvps xmm1, xmm7, xmm6, xmm2
bt r15d, 0xe
jb 0x1400a6df3
vcomiss xmm3, xmm1
jbe 0x1400a6def
test r15b, 8
je 0x1400a6df3
xor cl, cl
jmp 0x1400a6df5
mov cl, 1
mov byte [rsi + 0xcd], cl
bt r15d, 0xf
jb 0x1400a6e3d
test cl, cl
je 0x1400a6e11
vmovss xmm0, dword [r14 + 0x16a8]
jmp 0x1400a6e16
vmovaps xmm0, xmm13
vsubss xmm0, xmm4, xmm0
vcomiss xmm8, xmm0
jbe 0x1400a6e2f
mov eax, r15d
and eax, 0x808
cmp eax, 0x800
je 0x1400a6e3d
mov byte [rsi + 0xcc], 0
vmovaps xmm1, xmm13
jmp 0x1400a6e69
mov byte [rsi + 0xcc], 1
test cl, cl
jne 0x1400a6e60
vcomiss xmm3, xmm1
jbe 0x1400a6e58
test r15b, 8
jne 0x1400a6e58
mov cl, 1
jmp 0x1400a6e5a
xor cl, cl
mov byte [rsi + 0xcd], cl
vmovss xmm1, dword [r14 + 0x16a8]
test cl, cl
je 0x1400a6e78
vmovss xmm0, dword [r14 + 0x16a8]
jmp 0x1400a6e7d
vmovaps xmm0, xmm13
vmovss dword [rsi + 0xc4], xmm0
vmovss dword [rsi + 0xc8], xmm1
mov eax, r15d
and eax, 0x5000000
cmp eax, 0x1000000
jne 0x1400a6eb2
cmp dword [rsp + 0x58], 0x3000000
je 0x1400a6eb2
mov rax, qword [rbp - 0x80]
add rax, 0x290
jmp 0x1400a6eb7
lea rax, [rsp + 0x68]
test byte [rsi + 0xc], 1
vmovss xmm3, dword [rsi + 0x50]
vmovss xmm4, dword [rsi + 0x54]
vaddss xmm5, xmm3, dword [rsi + 0x58]
vaddss xmm7, xmm4, dword [rsi + 0x5c]
vmovups xmm6, xmmword [rax]
mov rcx, qword [0x140317818]
je 0x1400a6ee3
vmovaps xmm0, xmm13
jmp 0x1400a6f1f
vmovss xmm0, dword [rcx + 0x1a84]
mov rax, qword [rsi + 0x3c8]
vmulss xmm1, xmm0, dword [rsi + 0x2e8]
vmulss xmm2, xmm1, dword [rsi + 0x2ec]
test rax, rax
je 0x1400a6f0f
vmulss xmm2, xmm2, dword [rax + 0x2e8]
vmovss xmm0, dword [rcx + 0x1674]
vaddss xmm1, xmm0, xmm0
vaddss xmm0, xmm1, xmm2
vaddss xmm1, xmm3, dword [rsi + 0x60]
vmovss dword [rbp - 0x68], xmm3
vmovss dword [rbp - 0x60], xmm1
vaddss xmm2, xmm4, xmm0
vmovss xmm0, dword [rsi + 0x54]
vmovss dword [rbp - 0x64], xmm0
vmovss dword [rbp - 0x5c], xmm2
vmovss dword [rsi + 0x240], xmm3
vmovss dword [rsi + 0x244], xmm4
vmovss dword [rsi + 0x248], xmm5
vmovss dword [rsi + 0x24c], xmm7
test byte [rsi + 0x429], 1
je 0x1400a6f82
mov rcx, rsi
call fcn.1400c2230
vaddss xmm1, xmm0, dword [rsi + 0x244]
vmovss dword [rsi + 0x244], xmm1
vmovss xmm0, dword [rsi + 0x240]
vmovss xmm1, dword [rsi + 0x244]
vmaxss xmm2, xmm0, xmm6
vmovss dword [rsi + 0x240], xmm2
vshufps xmm7, xmm6, xmm6, 0x55
vmaxss xmm0, xmm1, xmm7
vmovss dword [rsi + 0x244], xmm0
vmovss xmm1, dword [rsi + 0x248]
vmovss xmm0, dword [rsi + 0x24c]
vshufps xmm11, xmm6, xmm6, 0xaa
vminss xmm2, xmm1, xmm11
vmovss dword [rsi + 0x248], xmm2
vshufps xmm9, xmm6, xmm6, 0xff
vminss xmm0, xmm0, xmm9
vmovss dword [rsi + 0x24c], xmm0
vmovss xmm1, dword [rsi + 0x54]
vmovss xmm2, dword [rsi + 0x50]
vaddss xmm0, xmm2, dword [rsi + 0x58]
vsubss xmm14, xmm0, dword [rsi + 0xc4]
vaddss xmm12, xmm12, xmm1
vaddss xmm1, xmm1, dword [rsi + 0x5c]
vsubss xmm15, xmm1, dword [rsi + 0xc8]
mov eax, r15d
and eax, 0x401
vmovss dword [rsi + 0x25c], xmm15
vmovss dword [rsi + 0x250], xmm2
vmovss dword [rsi + 0x254], xmm12
vmovss dword [rsi + 0x258], xmm14
cmp eax, 1
jne 0x1400a7042
vmovss xmm10, dword [rsi + 0x8c]
jmp 0x1400a704b
vmovss xmm10, dword [r14 + 0x167c]
vmovss xmm4, dword [0x1401e1fac]
vmulss xmm0, xmm4, dword [rsi + 0x80]
vmovss xmm5, dword [rsi + 0x8c]
vcvttss2si eax, xmm0
vaddss xmm0, xmm2, xmm4
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vmaxss xmm3, xmm1, xmm5
vaddss xmm2, xmm0, xmm3
vcvttss2si eax, xmm2
vxorps xmm2, xmm2, xmm2
vaddss xmm0, xmm12, xmm4
vaddss xmm1, xmm0, xmm10
vaddss xmm0, xmm14, xmm4
vxorps xmm8, xmm8, xmm8
vcvtsi2ss xmm8, xmm8, eax
vcvttss2si eax, xmm1
vcvtsi2ss xmm2, xmm2, eax
vmovss dword [rsi + 0x264], xmm2
vsubss xmm1, xmm0, xmm3
vxorps xmm2, xmm2, xmm2
vcvttss2si eax, xmm1
vcvtsi2ss xmm2, xmm2, eax
vaddss xmm0, xmm15, xmm4
vmovaps xmm15, xmmword [rsp + 0xf0]
vmovss dword [rsi + 0x268], xmm2
vsubss xmm1, xmm0, xmm5
vxorps xmm2, xmm2, xmm2
vcvttss2si eax, xmm1
vcvtsi2ss xmm2, xmm2, eax
vmovss dword [rsi + 0x26c], xmm2
vmovss dword [rsi + 0x260], xmm8
vmovss xmm0, dword [rsi + 0x264]
vcomiss xmm7, xmm0
jbe 0x1400a7102
vmovaps xmm1, xmm7
jmp 0x1400a7106
vminss xmm1, xmm9, xmm0
vcomiss xmm6, xmm8
jbe 0x1400a7113
vmovaps xmm0, xmm6
jmp 0x1400a7118
vminss xmm0, xmm11, xmm8
vmovss dword [rsi + 0x260], xmm0
vmovss dword [rsi + 0x264], xmm1
vmovss xmm0, dword [rsi + 0x26c]
vcomiss xmm7, xmm0
ja 0x1400a713a
vminss xmm7, xmm9, xmm0
vmovss xmm0, dword [rsi + 0x268]
vcomiss xmm6, xmm0
jbe 0x1400a714e
vmovaps xmm0, xmm6
jmp 0x1400a7152
vminss xmm0, xmm11, xmm0
vmovss dword [rsi + 0x268], xmm0
vmovss dword [rsi + 0x26c], xmm7
vmovss xmm1, dword [rsi + 0x58]
vcomiss xmm1, xmm13
jbe 0x1400a7181
test r15d, 0x2000040
jne 0x1400a7181
vmulss xmm0, xmm1, dword [0x1401e1fb8]
jmp 0x1400a7192
vmovss xmm0, dword [r14 + 0x1a80]
vmulss xmm0, xmm0, dword [0x1401e2028]
vcvttss2si eax, xmm0
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
mov rcx, rsi
mov rdx, rsi
vmovss dword [rcx + 0x2c4], xmm0
vmovss xmm2, dword [rsi + 0x258]
vmovss xmm1, dword [rsi + 0x80]
vaddss xmm0, xmm1, xmm1
vsubss xmm1, xmm2, dword [rsi + 0x250]
vaddss xmm3, xmm0, dword [rsi + 0x68]
vsubss xmm0, xmm3, xmm1
vmovss xmm1, dword [rsi + 0x84]
vmaxss xmm0, xmm13, xmm0
vmovss dword [rsi + 0xa4], xmm0
vmovss xmm0, dword [rsi + 0x25c]
vaddss xmm2, xmm1, xmm1
vsubss xmm1, xmm0, dword [rsi + 0x254]
vaddss xmm3, xmm2, dword [rsi + 0x6c]
vsubss xmm2, xmm3, xmm1
vmaxss xmm0, xmm13, xmm2
lea rcx, [rbp + 0xf8]
vmovss dword [rsi + 0xa8], xmm0
call fcn.1400a9690
mov rcx, qword [rsi + 0x2f8]
vmovss xmm0, dword [rax]
vmovss xmm1, dword [rax + 4]
vmovss dword [rsi + 0x9c], xmm0
vmovss dword [rsi + 0xa0], xmm1
mov dword [rsi + 0xac], 0x7f7fffff
mov dword [rsi + 0xb0], 0x7f7fffff
mov rax, qword [r14 + 0x1a78]
mov rdx, qword [rax + 0x40]
mov rdx, qword [rdx + 8]
call fcn.1400ce060
mov rcx, qword [0x140317818]
xor r9d, r9d
vunpckhpd xmm0, xmm6, xmm6
vmovq r8, xmm0
vmovq rdx, xmm6
mov rax, qword [rcx + 0x1d18]
mov byte [rax + 0xd1], 1
mov rbx, qword [rcx + 0x1d18]
mov rcx, qword [rbx + 0x2f8]
call fcn.1400cde90
mov rax, qword [rbx + 0x2f8]
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 + 0x290], eax
vmovss dword [rbx + 0x294], xmm0
vmovss dword [rbx + 0x298], xmm1
vmovss dword [rbx + 0x29c], xmm2
mov rbx, qword [r14 + 0x2090]
bt r15d, 0x1b
jae 0x1400a730b
call fcn.1400b5ad0
cmp rsi, rax
jne 0x1400a730b
cmp byte [rsi + 0xf1], 0
jg 0x1400a730b
mov cl, 1
mov edx, 0x424
jmp 0x1400a7312
xor cl, cl
mov edx, 0x414
mov rax, qword [r14 + 0x2088]
test rax, rax
je 0x1400a733a
cmp rsi, qword [rax + 0x3d8]
je 0x1400a7336
cmp rsi, rbx
jne 0x1400a733a
mov rax, qword [rax + 0x38]
cmp qword [rbx + 0x38], rax
je 0x1400a733a
mov bl, 1
jmp 0x1400a733c
xor bl, bl
test cl, cl
jne 0x1400a7348
test bl, bl
je 0x1400a74a1
mov rax, qword [0x140317818]
lea rcx, [rsp + 0x48]
vmovss xmm0, dword [r14 + 0x20cc]
vmovups xmm2, xmmword [rax + rdx + 0x1638]
vmulss xmm1, xmm0, dword [rax + 0x1638]
vmovups xmmword [rsp + 0x48], xmm2
vshufps xmm2, xmm2, xmm2, 0xff
vmulss xmm0, xmm2, xmm1
vmovss dword [rsp + 0x54], xmm0
call fcn.1400aa9d0
mov rcx, qword [rsi + 0x2f8]
lea r8, [rsp + 0x70]
mov r9d, eax
lea rdx, [rsp + 0x68]
xor eax, eax
mov dword [rsp + 0x28], eax
vmovss dword [rsp + 0x20], xmm13
call fcn.1400c94e0
test bl, bl
je 0x1400a74a1
cmp rsi, qword [r14 + 0x2088]
jne 0x1400a74a1
vmovss xmm1, dword [r14 + 0x1a80]
vmovss xmm0, dword [rsi + 0x50]
vmovss xmm2, dword [rsi + 0x54]
vsubss xmm3, xmm0, xmm1
vaddss xmm0, xmm0, dword [rsi + 0x58]
vaddss xmm5, xmm0, xmm1
vaddss xmm0, xmm2, dword [rsi + 0x5c]
vsubss xmm4, xmm2, xmm1
vaddss xmm2, xmm0, xmm1
vmovss xmm1, dword [rsp + 0x68]
vcomiss xmm1, xmm3
vmovss dword [rsp + 0x48], xmm3
vmovss dword [rsp + 0x4c], xmm4
vmovss dword [rsp + 0x50], xmm5
vmovss dword [rsp + 0x54], xmm2
jb 0x1400a742f
vmovss xmm0, dword [rsp + 0x6c]
vcomiss xmm0, xmm4
jb 0x1400a742f
vcomiss xmm5, dword [rsp + 0x70]
jb 0x1400a742f
vcomiss xmm2, dword [rsp + 0x74]
jae 0x1400a74a1
mov rax, qword [0x140317818]
lea rcx, [rbp - 0x48]
vmovss xmm0, dword [r14 + 0x209c]
vmulss xmm0, xmm0, dword [0x1401e1fa0]
vmovups xmm2, xmmword [rax + 0x1a3c]
vmulss xmm1, xmm0, dword [rax + 0x1638]
vmovups xmmword [rbp - 0x48], xmm2
vshufps xmm2, xmm2, xmm2, 0xff
vmulss xmm0, xmm2, xmm1
vmovss dword [rbp - 0x3c], xmm0
call fcn.1400aa9d0
vmovss xmm0, dword [r14 + 0x1644]
mov rcx, qword [rsi + 0x2f8]
lea r8, [rsp + 0x50]
mov r9d, eax
lea rdx, [rsp + 0x48]
xor eax, eax
mov dword [rsp + 0x28], eax
vmovss dword [rsp + 0x20], xmm0
call fcn.1400c94e0
movzx eax, byte [rsi + 0x429]
test al, 1
je 0x1400a74b4
test al, 2
je 0x1400a7586
mov eax, r15d
xor bl, bl
and eax, 0x5000000
cmp eax, 0x1000000
jne 0x1400a7502
cmp dword [rsp + 0x58], 0x3000000
je 0x1400a7502
mov rdx, qword [rsi + 0x2f8]
movsxd rax, dword [rdx]
imul rcx, rax, 0x38
mov rax, qword [rdx + 8]
cmp dword [rcx + rax - 0x18], 0
jne 0x1400a7502
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x2f8]
cmp dword [rax + 0x20], 0
jle 0x1400a7502
mov bl, 1
mov qword [rsi + 0x2f8], rax
mov rcx, qword [r14 + 0x2080]
test rcx, rcx
jne 0x1400a7515
mov rcx, qword [r14 + 0x1f50]
test r12b, r12b
jne 0x1400a7549
test rcx, rcx
je 0x1400a7544
mov rax, qword [rcx + 0x3e0]
cmp qword [rsi + 0x3e0], rax
je 0x1400a7549
mov rax, qword [rsi + 0x448]
test rax, rax
je 0x1400a7544
cmp rax, qword [rcx + 0x448]
je 0x1400a7549
xor r8b, r8b
jmp 0x1400a754c
mov r8b, 1
vmovss xmm0, dword [rbp - 0x50]
vmovss dword [rsp + 0x30], xmm0
lea rax, [rbp - 0x28]
movzx r9d, r13b
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x68]
mov rcx, rsi
mov dword [rsp + 0x20], edi
call fcn.1400bf380
test bl, bl
je 0x1400a7586
lea rax, [rsi + 0x300]
mov qword [rsi + 0x2f8], rax
cmp qword [r14 + 0x2088], rsi
jne 0x1400a76be
vmovss xmm2, dword [r14 + 0x1a80]
vmovss xmm0, dword [rsi + 0x50]
vmovss xmm1, dword [rsi + 0x54]
vmovss xmm7, dword [rsi + 0x88]
vmaxss xmm8, xmm7, dword [r14 + 0x1644]
vsubss xmm6, xmm0, xmm2
vaddss xmm0, xmm0, dword [rsi + 0x58]
vaddss xmm3, xmm0, xmm2
vaddss xmm0, xmm1, dword [rsi + 0x5c]
vsubss xmm5, xmm1, xmm2
vmovss xmm1, dword [rsp + 0x68]
vcomiss xmm1, xmm6
vaddss xmm4, xmm0, xmm2
vmovss dword [rsp + 0x54], xmm4
vmovss dword [rsp + 0x48], xmm6
vmovss dword [rsp + 0x4c], xmm5
vmovss dword [rsp + 0x50], xmm3
jb 0x1400a764d
vmovss xmm0, dword [rsp + 0x6c]
vcomiss xmm0, xmm5
jb 0x1400a764d
vcomiss xmm3, dword [rsp + 0x70]
jb 0x1400a764d
vcomiss xmm4, dword [rsp + 0x74]
jb 0x1400a764d
vxorps xmm0, xmm2, xmmword [0x1401e20a0]
vsubss xmm2, xmm0, dword [0x1401e1fdc]
vsubss xmm1, xmm6, xmm2
vsubss xmm0, xmm5, xmm2
vmovss dword [rsp + 0x48], xmm1
vmovss dword [rsp + 0x4c], xmm0
vaddss xmm1, xmm2, xmm3
vaddss xmm0, xmm2, xmm4
vmovss dword [rsp + 0x50], xmm1
vmovss dword [rsp + 0x54], xmm0
vmovaps xmm8, xmm7
mov rax, qword [0x140317818]
lea rcx, [rbp - 0x28]
vmovss xmm0, dword [r14 + 0x209c]
vmovups xmm2, xmmword [rax + 0x1a3c]
vmulss xmm1, xmm0, dword [rax + 0x1638]
vmovups xmmword [rbp - 0x28], xmm2
vshufps xmm2, xmm2, xmm2, 0xff
vmulss xmm0, xmm2, xmm1
vmovss dword [rbp - 0x1c], xmm0
call fcn.1400aa9d0
vmovss xmm0, dword [0x1401e200c]
mov rcx, qword [rsi + 0x2f8]
lea r8, [rsp + 0x50]
vmovss dword [rsp + 0x30], xmm0
xor edi, edi
lea rdx, [rsp + 0x48]
mov dword [rsp + 0x28], edi
mov r9d, eax
vmovss dword [rsp + 0x20], xmm8
call fcn.1400c93d0
jmp 0x1400a76c0
xor edi, edi
vmovss xmm6, dword [rsi + 0x78]
mov ecx, r15d
shr ecx, 3
not cl
and cl, 1
vucomiss xmm6, xmm13
jp 0x1400a771b
jne 0x1400a771b
vmovss xmm0, dword [rsi + 0x80]
vmovss xmm1, dword [rsi + 0x58]
mov eax, r15d
vaddss xmm2, xmm0, xmm0
and eax, 0x808
vsubss xmm2, xmm1, xmm2
vsubss xmm3, xmm2, dword [rsi + 0xc4]
cmp eax, 0x800
jne 0x1400a7710
vmovss xmm0, dword [rsi + 0x68]
vmaxss xmm10, xmm0, xmm3
jmp 0x1400a771f
vmovaps xmm0, xmm13
vmaxss xmm10, xmm0, xmm3
jmp 0x1400a771f
vmovaps xmm10, xmm6
vmovss xmm5, dword [rsi + 0x7c]
vucomiss xmm5, xmm13
jp 0x1400a776f
jne 0x1400a776f
vmovss xmm0, dword [rsi + 0x84]
vmovss xmm1, dword [rsi + 0x5c]
vmovss xmm14, dword [rsp + 0x78]
vaddss xmm2, xmm0, xmm0
vsubss xmm2, xmm1, xmm2
vsubss xmm0, xmm2, xmm14
vsubss xmm3, xmm0, dword [rsi + 0xc8]
test cl, cl
je 0x1400a7764
vmovss xmm0, dword [rsi + 0x6c]
vmaxss xmm9, xmm0, xmm3
jmp 0x1400a7779
vmovaps xmm0, xmm13
vmaxss xmm9, xmm0, xmm3
jmp 0x1400a7779
vmovss xmm14, dword [rsp + 0x78]
vmovaps xmm9, xmm5
vucomiss xmm6, xmm13
vmovss xmm3, dword [rsi + 0x8c]
vmovss xmm8, dword [rsi + 0x80]
vmovss xmm11, dword [rsi + 0x9c]
vmovss xmm0, dword [rsi + 0x250]
vsubss xmm2, xmm0, xmm11
vmaxss xmm1, xmm8, xmm3
vaddss xmm2, xmm2, xmm1
vcvttss2si eax, xmm2
vxorps xmm4, xmm4, xmm4
vcvtsi2ss xmm4, xmm4, eax
vmovss dword [rsi + 0x270], xmm4
vmovss xmm7, dword [rsi + 0x84]
vmovss xmm12, dword [rsi + 0xa0]
vmovss xmm0, dword [rsi + 0x254]
vsubss xmm1, xmm0, xmm12
vmaxss xmm2, xmm7, xmm3
vaddss xmm2, xmm2, xmm1
vaddss xmm0, xmm10, xmm4
vmovaps xmm10, xmmword [rsp + 0x140]
vcvttss2si eax, xmm2
vxorps xmm3, xmm3, xmm3
vcvtsi2ss xmm3, xmm3, eax
vmovss dword [rsi + 0x274], xmm3
vmovss dword [rsi + 0x278], xmm0
vaddss xmm1, xmm9, xmm3
vmovss dword [rsi + 0x27c], xmm1
vmovups xmm0, xmmword [rsi + 0x270]
vmovups xmmword [rsi + 0x280], xmm0
vmovss xmm4, dword [rsi + 0x50]
vsubss xmm0, xmm4, xmm11
vaddss xmm3, xmm0, xmm8
vmovss dword [rsi + 0x2a0], xmm3
vmovss xmm0, dword [rsi + 0x54]
vsubss xmm1, xmm0, xmm12
vaddss xmm2, xmm1, xmm7
vaddss xmm9, xmm2, xmm14
vmovss dword [rsi + 0x2a4], xmm9
jp 0x1400a7875
jne 0x1400a7875
vmovss xmm0, dword [rsi + 0x58]
vaddss xmm1, xmm8, xmm8
vsubss xmm1, xmm0, xmm1
vsubss xmm6, xmm1, dword [rsi + 0xc4]
vucomiss xmm5, xmm13
vaddss xmm0, xmm3, xmm6
vmovss dword [rsi + 0x2a8], xmm0
jp 0x1400a78a4
jne 0x1400a78a4
vmovss xmm0, dword [rsi + 0x5c]
vaddss xmm1, xmm7, xmm7
vsubss xmm1, xmm0, xmm1
vsubss xmm2, xmm1, xmm14
vsubss xmm5, xmm2, dword [rsi + 0xc8]
movzx r9d, byte [rsp + 0x41]
lea rcx, [rsi + 0x1a4]
vaddss xmm0, xmm9, xmm5
vmovss dword [rsi + 0x2ac], xmm0
vaddss xmm1, xmm8, xmm13
vsubss xmm0, xmm1, xmm11
vmovss dword [rsi + 0x158], xmm0
mov qword [rsi + 0x15c], 0
mov edx, 3
vaddss xmm0, xmm0, xmm13
vaddss xmm3, xmm0, xmm4
vaddss xmm1, xmm7, xmm14
vsubss xmm2, xmm1, xmm12
vaddss xmm0, xmm2, dword [rsi + 0x54]
vmovss dword [rsi + 0x128], xmm3
vmovss dword [rsi + 0x12c], xmm0
vmovss dword [rsi + 0x118], xmm3
vmovss dword [rsi + 0x11c], xmm0
vmovss dword [rsi + 0x120], xmm3
vmovss dword [rsi + 0x124], xmm0
vmovss xmm0, dword [rsi + 0x128]
vmovss xmm1, dword [rsi + 0x12c]
vmovss dword [rsi + 0x130], xmm0
vmovss dword [rsi + 0x134], xmm1
vmovss dword [rsi + 0x138], xmm0
vmovss dword [rsi + 0x13c], xmm1
mov qword [rsi + 0x148], 0
mov qword [rsi + 0x140], 0
mov qword [rsi + 0x150], 0
mov dword [rsi + 0x18c], edi
movzx eax, word [rsi + 0x192]
mov word [rsi + 0x190], ax
mov word [rsi + 0x192], di
mov byte [rsi + 0x198], 0
vmovss xmm0, dword [rsi + 0xa8]
vcomiss xmm0, xmm13
seta al
mov byte [rsi + 0x199], al
mov byte [rsi + 0x19a], 0
vmovss xmm2, dword [r14 + 0x1680]
call fcn.1400e57f0
vmovaps xmm14, xmmword [rsp + 0x100]
vmovaps xmm12, xmmword [rsp + 0x120]
vmovaps xmm11, xmmword [rsp + 0x130]
vmovaps xmm9, xmmword [rsp + 0x150]
mov qword [rsi + 0x1c8], 0
mov ecx, dword [rsi + 0x1d4]
test ecx, ecx
jns 0x1400a7a1a
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.1400c6600
mov dword [rsi + 0x1d0], edi
lea rax, [rsi + 0x2c8]
mov qword [rsi + 0x1e0], rax
mov r13d, 1
mov rax, qword [rbp - 0x80]
mov qword [rsi + 0x1e8], rdi
mov dword [rsi + 0x1f4], r13d
test rax, rax
je 0x1400a7a53
mov eax, dword [rax + 0x1f4]
jmp 0x1400a7a56
mov eax, r13d
mov dword [rsi + 0x1f8], eax
mov qword [rsi + 0x1fc], 0xffffffffffffffff
mov eax, dword [rsi + 0x2c4]
mov dword [rsi + 0x204], eax
mov dword [rsi + 0x208], 0xbf800000
mov ecx, dword [rsi + 0x214]
test ecx, ecx
jns 0x1400a7aa3
mov eax, ecx
cdq
sub eax, edx
mov edx, edi
sar eax, 1
add eax, ecx
lea rcx, [rsi + 0x210]
test eax, eax
cmovg edx, eax
call fcn.1400c6560
mov dword [rsi + 0x210], edi
mov ecx, dword [rsi + 0x224]
test ecx, ecx
jns 0x1400a7acf
mov eax, ecx
cdq
sub eax, edx
mov edx, edi
sar eax, 1
add eax, ecx
lea rcx, [rsi + 0x220]
test eax, eax
cmovg edx, eax
call fcn.1400c6560
mov dword [rsi + 0x220], edi
movzx eax, byte [rsi + 0xe8]
test al, al
jle 0x1400a7ae8
dec al
mov byte [rsi + 0xe8], al
movzx eax, byte [rsi + 0xe9]
test al, al
jle 0x1400a7afb
dec al
mov byte [rsi + 0xe9], al
test r12b, r12b
je 0x1400a7b12
mov rcx, rsi
call fcn.1400b4c60
xor edx, edx
mov rcx, rsi
call fcn.1400b85d0
mov r8, qword [rbp + 0xe8]
test r8, r8
je 0x1400a7b5b
mov rdx, qword [rsi + 0x38]
cmp byte [rdx + 0x5a], 0
je 0x1400a7b5b
mov rax, qword [0x140317818]
mov rcx, qword [rax + 0x1ef8]
cmp rdx, qword [rcx]
je 0x1400a7b5b
movzx eax, byte [rsi + 0x429]
test r13b, al
je 0x1400a7b4b
test al, 2
je 0x1400a7b5b
mov byte [rdx + 0x5a], 0
mov byte [r14 + 0x20a0], 0
mov byte [r8], 0
test r13b, r15b
jne 0x1400a7bb8
test byte [rsi + 0x429], r13b
jne 0x1400a7bb8
vmovss xmm3, dword [rsi + 0x8c]
vaddss xmm1, xmm3, dword [rbp - 0x68]
vmovss xmm2, dword [rbp - 0x64]
vmovss xmm0, dword [rbp - 0x60]
vmovss dword [rsp + 0x48], xmm1
vmovss dword [rsp + 0x4c], xmm2
vmovss xmm2, dword [rbp - 0x5c]
vsubss xmm1, xmm0, xmm3
mov r9, r8
lea rdx, [rsp + 0x48]
mov r8, qword [rbp + 0xe0]
mov rcx, rsi
vmovss dword [rsp + 0x50], xmm1
vmovss dword [rsp + 0x54], xmm2
call fcn.1400c01b0
mov dword [rsi + 0x2b0], 0
test byte [r14 + 8], 0x40
je 0x1400a7dd1
cmp qword [r14 + 0x1d38], rsi
jne 0x1400a7d91
cmp byte [r14 + 0x13d], 0
jne 0x1400a7d91
mov r13, qword [rsi + 0x3d8]
test dword [r13 + 0xc], 0x200000
jne 0x1400a7d8b
mov r12, qword [0x140317818]
mov eax, dword [rsi + 0x94]
mov dword [rsi + 0x164], eax
mov rax, qword [0x140317818]
vmovss xmm2, dword [r12 + 0x1d90]
vcomiss xmm2, xmm13
vmovss xmm3, dword [r13 + 0x60]
vmovss xmm0, dword [rax + 0x1674]
vaddss xmm1, xmm0, xmm0
vaddss xmm4, xmm1, dword [rax + 0x1a80]
jb 0x1400a7d8b
vmovss xmm0, dword [r12 + 0x1d94]
vcomiss xmm0, xmm13
jb 0x1400a7d8b
vcomiss xmm3, xmm2
jbe 0x1400a7d8b
vcomiss xmm4, xmm0
jbe 0x1400a7d8b
mov ecx, Ordinal_41
call fcn.1400a8d90
test al, al
je 0x1400a7d8b
mov rdi, qword [0x140317818]
lea rdx, str._IMWINDOW
mov r8d, reloc.WLDAP32.dll_Ordinal_32
lea rcx, [rdi + 0x2100]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
lea rcx, [rdi + 0x2158]
mov byte [rdi + 0x2120], 0
xor edx, edx
call fcn.1400c6970
xor ebx, ebx
lea rax, [rdi + 0x2168]
mov qword [rdi + 0x2170], rbx
mov qword [rdi + 0x20e8], rax
mov qword [rax], r13
mov dword [rdi + 0x20f0], 8
mov eax, dword [rdi + 0x1c90]
mov dword [rdi + 0x20fc], eax
mov rbx, qword [0x140317818]
test byte [rbx + 0x20d8], 1
jne 0x1400a7cfc
call fcn.1400b2a30
cmp dword [rbx + 0x20fc], 0xffffffff
jne 0x1400a7d0a
call fcn.1400aa610
lea rcx, [r12 + 0x16fc]
mov byte [rbx + 0x20d5], 0
call fcn.1400aa9d0
lea rcx, [r12 + 0x190c]
mov dword [r13 + 0x42c], eax
call fcn.1400aa9d0
lea rcx, [r12 + 0x191c]
mov dword [r13 + 0x430], eax
call fcn.1400aa9d0
lea rcx, [r12 + 0x192c]
mov dword [r13 + 0x434], eax
call fcn.1400aa9d0
lea rcx, [r12 + 0x193c]
mov dword [r13 + 0x438], eax
call fcn.1400aa9d0
lea rcx, [r12 + 0x194c]
mov dword [r13 + 0x43c], eax
call fcn.1400aa9d0
mov dword [r13 + 0x440], eax
xor edi, edi
mov r13d, 1
cmp byte [r14 + 0x20d4], 0
je 0x1400a7dd1
bt r15d, 0x15
jb 0x1400a7dd1
mov rax, qword [r14 + 0x1d38]
test rax, rax
je 0x1400a7db7
cmp qword [rax + 0x3d8], rsi
je 0x1400a7dd1
cmp rsi, qword [rsi + 0x3d8]
jne 0x1400a7dd1
test dword [rsi + 0xc], 0x20000000
jne 0x1400a7dd1
mov rcx, rsi
call fcn.1400a84a0
test byte [rsi + 0x429], 1
je 0x1400a7e08
mov ecx, dword [rsi + 0x45c]
mov eax, dword [rsi + 8]
mov edi, dword [rsp + 0x5c]
mov dword [rsi + 0x164], eax
mov dword [rsi + 0x168], ecx
vmovups xmm0, xmmword [rsi + 0x460]
vmovups xmmword [rsi + 0x16c], xmm0
jmp 0x1400a7f9e
mov rax, qword [0x140317818]
vmovss xmm5, dword [rbp - 0x60]
vmovss xmm4, dword [rbp - 0x68]
vmovss xmm3, dword [rbp - 0x5c]
vmovss xmm0, dword [rax + 0x1698]
vmovss xmm1, dword [rax + 0x169c]
vmovss xmm2, dword [rax + 0x120]
vmovss xmm6, dword [rbp - 0x64]
vaddss xmm7, xmm5, xmm0
vsubss xmm0, xmm4, xmm0
vcomiss xmm2, xmm0
vaddss xmm8, xmm3, xmm1
vsubss xmm1, xmm6, xmm1
jb 0x1400a7ea1
vmovss xmm0, dword [rax + 0x124]
vcomiss xmm0, xmm1
jb 0x1400a7ea1
vcomiss xmm7, xmm2
jbe 0x1400a7ea1
vcomiss xmm8, xmm0
jbe 0x1400a7ea1
mov rax, qword [rax + 0x1f10]
vmovss xmm1, dword [rax + 0xc]
vaddss xmm0, xmm1, dword [rax + 0x14]
vcomiss xmm0, xmm6
vmovss xmm2, dword [rax + 8]
vaddss xmm7, xmm2, dword [rax + 0x10]
jbe 0x1400a7ea1
vcomiss xmm3, xmm1
jbe 0x1400a7ea1
vcomiss xmm7, xmm4
jbe 0x1400a7ea1
vcomiss xmm5, xmm2
mov ecx, r13d
ja 0x1400a7ea3
mov ecx, edi
mov eax, dword [rsi + 0x94]
vmovups xmm0, xmmword [rbp - 0x68]
mov edi, dword [rsp + 0x5c]
mov dword [rsi + 0x164], eax
mov dword [rsi + 0x168], ecx
vmovups xmmword [rsi + 0x16c], xmm0
jmp 0x1400a7f9e
mov rcx, qword [rsi + 0x38]
mov rdx, qword [0x140317818]
test rcx, rcx
je 0x1400a7ee4
mov eax, dword [rdx + 0x1c90]
mov dword [rcx + 0x64], eax
cmp qword [rdx + 0x1f08], rcx
je 0x1400a7f26
test rcx, rcx
je 0x1400a7f15
mov eax, dword [rcx + 0x28]
mov dword [rdx + 0x1f00], eax
mov rax, qword [rdx + 0x15d8]
mov qword [rdx + 0x1f08], rcx
test rax, rax
je 0x1400a7f26
vzeroupper
call rax
jmp 0x1400a7f26
mov dword [rdx + 0x1f00], 0x3f800000
mov qword [rdx + 0x1f08], rcx
mov rcx, qword [0x140317818]
mov qword [rcx + 0x1d18], rsi
movsxd rax, dword [rsi + 0x1f0]
cmp eax, 0xffffffff
je 0x1400a7f50
imul rdx, rax, 0x258
add rdx, qword [rcx + 0x2188]
jmp 0x1400a7f54
xor eax, eax
mov edx, eax
mov qword [rcx + 0x2178], rdx
mov rax, qword [0x140317818]
vmovss xmm0, dword [rax + 0x1a84]
mov rax, qword [rsi + 0x3c8]
vmulss xmm1, xmm0, dword [rsi + 0x2e8]
vmulss xmm2, xmm1, dword [rsi + 0x2ec]
test rax, rax
je 0x1400a7f8e
vmulss xmm2, xmm2, dword [rax + 0x2e8]
vmovss dword [rcx + 0x1a98], xmm2
vmovss dword [rcx + 0x1a80], xmm2
movsxd rcx, dword [r14 + 0x1eb0]
xor r12d, r12d
mov rax, qword [r14 + 0x1eb8]
vmovaps xmm8, xmmword [rsp + 0x160]
vmovaps xmm7, xmmword [rsp + 0x170]
vmovaps xmm6, xmmword [rsp + 0x180]
mov ecx, dword [rax + rcx*4 - 4]
mov r13, qword [rsp + 0x198]
mov rbx, qword [rbp - 0x80]
mov dword [r14 + 0x1d54], ecx
bt r15d, 0x18
jae 0x1400a7ff0
mov eax, dword [rbx + 0x194]
jmp 0x1400a7ff3
mov eax, r12d
mov dword [rsi + 0x194], eax
bt r15d, 0x1d
jb 0x1400a8019
lea rdx, [rsi + 0x268]
mov r8b, 1
lea rcx, [rsi + 0x260]
vzeroupper
call fcn.1400bcfa0
mov byte [rsi + 0xd1], 0
inc word [rsi + 0xda]
cmp dword [rbp - 0x58], edi
mov rdi, qword [rsp + 0x1a8]
mov dword [r14 + 0x1dc0], r12d
mov r12, qword [rsp + 0x1a0]
je 0x1400a8195
movzx eax, byte [rsi + 0x429]
test al, 1
je 0x1400a8075
test al, 2
jne 0x1400a8075
mov eax, dword [r14 + 0x1c90]
cmp dword [rsi + 0x2bc], eax
jne 0x1400a806e
mov byte [rsi + 0xf1], 1
jmp 0x1400a8075
mov byte [rsi + 0xf0], 1
bt r15d, 0x18
jae 0x1400a8104
test r15b, 0x40
jne 0x1400a80cd
cmp byte [rsi + 0xe8], 0
jg 0x1400a80cd
cmp byte [rsi + 0xe9], 0
jg 0x1400a80cd
cmp byte [r14 + 0x3254], 0
jne 0x1400a80cd
vmovss xmm0, dword [rsi + 0x240]
vcomiss xmm0, dword [rsi + 0x248]
jae 0x1400a80c6
vmovss xmm0, dword [rsi + 0x244]
vcomiss xmm0, dword [rsi + 0x24c]
jb 0x1400a80cd
mov byte [rsi + 0xf0], 1
test rbx, rbx
je 0x1400a8104
cmp byte [rbx + 0xd2], 0
jne 0x1400a80e4
cmp byte [rbx + 0xf0], 0
jle 0x1400a80eb
mov byte [rsi + 0xf0], 1
cmp byte [rbx + 0xd2], 0
jne 0x1400a80fd
cmp byte [rbx + 0xf1], 0
jle 0x1400a8104
mov byte [rsi + 0xf1], 1
vcomiss xmm13, dword [r14 + 0x1638]
jb 0x1400a8116
mov byte [rsi + 0xf0], 1
cmp byte [rsi + 0xf0], 0
jg 0x1400a8135
cmp byte [rsi + 0xf1], 0
jg 0x1400a8135
cmp byte [rsi + 0xf2], 0
jg 0x1400a8135
xor cl, cl
jmp 0x1400a8137
mov cl, 1
mov byte [rsi + 0xd6], cl
movzx eax, byte [rsi + 0xf3]
test al, al
jle 0x1400a8157
dec al
mov byte [rsi + 0xf3], al
or dword [rsi + 0xc], 0xc0200
xor al, al
cmp byte [rsi + 0xd2], al
jne 0x1400a816d
cmp byte [rsi + 0xcf], al
je 0x1400a816d
test cl, cl
je 0x1400a818f
cmp byte [rsi + 0xe8], al
jg 0x1400a818f
cmp byte [rsi + 0xe9], al
jg 0x1400a818f
cmp byte [rsi + 0xf1], 0
mov ecx, 1
movzx eax, al
cmovle eax, ecx
mov byte [rsi + 0xd4], al
cmp byte [rsi + 0xd4], 0
sete al
vzeroupper
vmovaps xmm13, xmmword [rsp + 0x110]
add rsp, 0x1b0
pop r15
pop r14
pop rsi
pop rbx
pop rbp
ret