Function at 0x18002da20
Capabilities:
Hash data with crc32

Disassembly:
mov r11, rsp
push rbp
push rdi
push r12
push r14
lea rbp, [r11 - 0x138]
sub rsp, 0x218
vmovaps xmmword [r11 - 0xb8], xmm13
mov rax, qword [0x180101010]
xor rax, rsp
mov qword [rbp + 0x50], rax
mov r14, qword [0x180186220]
mov r10d, 0xffffffff
mov qword [r11 + 0x10], rbx
mov ebx, r8d
mov qword [r11 - 0x30], r13
mov qword [r11 - 0x38], r15
mov r11, rcx
mov qword [rbp - 0x48], rcx
mov ecx, r10d
movzx r9d, byte [r11]
lea r8, [r11 + 1]
test r9b, r9b
je 0x18002dab7
lea rdi, [0x1800cfd50]
cmp r9b, 0x23
jne 0x18002da9b
cmp byte [r8], r9b
jne 0x18002da9b
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 [rdi + rdx*4]
test r9b, r9b
jne 0x18002da88
not ecx
call fcn.18002b340
test rax, rax
mov qword [rsp + 0x50], rax
mov rdi, rax
sete r9b
mov byte [rsp + 0x30], r9b
test rax, rax
jne 0x18002daea
mov edx, ebx
mov rcx, r11
call fcn.18002b530
movzx r9d, byte [rsp + 0x30]
mov rdi, rax
mov r13d, dword [r14 + 0x3e10]
mov ecx, ebx
mov edx, dword [rdi + 0x248]
mov r15d, ebx
or r15d, 6
mov dword [rsp + 0x60], r13d
and ecx, 0xc0200
mov dword [rsp + 0x48], edx
cmp ecx, 0xc0200
cmovne r15d, ebx
lea rbx, [r14 + 0x3e60]
cmp dword [rbx], 0
mov dword [rsp + 0x38], r15d
jne 0x18002db38
cmp byte [r14 + 0x3e1d], 0
je 0x18002db38
mov al, 1
jmp 0x18002db3a
xor al, al
mov byte [rdi + 0x9e], al
lea eax, [r13 - 1]
cmp edx, eax
setl r8b
mov byte [rsp + 0x31], r8b
bt r15d, 0x1a
jae 0x18002db88
movsxd rax, dword [r14 + 0x4070]
imul rcx, rax, 0x38
add rcx, qword [r14 + 0x4068]
cmp rdi, qword [rcx + 8]
mov eax, dword [rcx]
setne dl
cmp dword [rdi + 0xac], eax
setne al
or dl, al
or r8b, dl
mov edx, dword [rsp + 0x48]
mov byte [rsp + 0x31], r8b
mov byte [rdi + 0x9c], r8b
test r8b, r8b
je 0x18002dba9
or byte [rdi + 0xbc], 8
or byte [rdi + 0xbd], 8
or byte [rdi + 0xbe], 8
xor r12d, r12d
cmp edx, r13d
je 0x18002dc04
mov r8d, r15d
movzx edx, r9b
mov rcx, rdi
call fcn.18002b3c0
mov edx, dword [rsp + 0x48]
mov dword [rdi + 0xc], r15d
mov dword [rdi + 0x248], r13d
vmovsd xmm0, qword [r14 + 0x3e08]
mov word [rdi + 0xa4], r12w
vcvtpd2ps xmm0, xmm0
vmovss dword [rdi + 0x24c], xmm0
movzx eax, word [r14 + 0x3e80]
inc dword [r14 + 0x3e80]
mov word [rdi + 0xa6], ax
jmp 0x18002dc0d
mov r15d, dword [rdi + 0xc]
mov dword [rsp + 0x38], r15d
movsxd rax, dword [rbx]
mov qword [rsp + 0x210], rsi
test eax, eax
jne 0x18002dc21
mov rsi, r12
jmp 0x18002dc31
imul rcx, rax, 0x58
mov rax, qword [r14 + 0x3e68]
mov rsi, qword [rcx + rax - 0x58]
cmp edx, r13d
je 0x18002dc46
test r15d, 0x5000000
mov r15, r12
cmovne r15, rsi
jmp 0x18002dc4d
mov r15, qword [rdi + 0x350]
lea r12, [rdi + 0xd0]
mov qword [rsp + 0x78], r15
cmp dword [r12], 0
mov r13d, 8
jne 0x18002dc8c
cmp dword [r12 + 4], 0
jne 0x18002dc79
mov edx, r13d
mov rcx, r12
call fcn.1800214c0
movsxd rdx, dword [r12]
mov eax, dword [rdi + 8]
mov rcx, qword [r12 + 8]
mov dword [rcx + rdx*4], eax
inc dword [r12]
mov rdx, qword [0x180186220]
mov eax, dword [r14 + 0x3f8c]
vmovups xmm1, xmmword [r14 + 0x3f74]
mov qword [r14 + 0x3e90], rdi
mov r8d, dword [rbx + 4]
mov dword [rbp + 0x20], eax
mov rax, qword [rdx + 0x3e90]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0x24], xmm0
vmovups ymm0, ymmword [r14 + 0x3f54]
movzx ecx, word [rax + 0xd0]
movzx eax, word [rdx + 0x4000]
mov word [rbp + 0x26], ax
movzx eax, word [rdx + 0x4010]
mov word [rbp + 0x28], ax
movzx eax, word [rdx + 0x4020]
mov word [rbp + 0x2a], ax
movzx eax, word [rdx + 0x4030]
mov word [rbp + 0x2c], ax
movzx eax, word [rdx + 0x4050]
mov word [rbp + 0x2e], ax
movzx eax, word [rdx + 0x4040]
mov word [rbp + 0x30], ax
movzx eax, word [rdx + 0x4070]
mov word [rbp + 0x32], ax
movzx eax, word [rdx + 0x5330]
vmovups ymmword [rbp - 0x18], ymm0
vmovsd xmm0, qword [r14 + 0x3f84]
mov word [rbp + 0x24], cx
mov ecx, dword [rbx]
mov word [rbp + 0x34], ax
mov qword [rbp - 0x20], rdi
vmovups xmmword [rbp + 8], xmm1
vmovsd qword [rbp + 0x18], xmm0
cmp ecx, r8d
jne 0x18002dd79
inc ecx
test r8d, r8d
je 0x18002dd64
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x18002dd67
mov eax, r13d
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, rbx
vzeroupper
call fcn.180039b20
movsxd rax, dword [rbx]
vmovups ymm0, ymmword [rbp - 0x20]
vmovups ymm1, ymmword [rbp]
imul rcx, rax, 0x58
mov rax, qword [rbx + 8]
vmovups ymmword [rcx + rax], ymm0
vmovups xmm0, xmmword [rbp + 0x20]
vmovups ymmword [rcx + rax + 0x20], ymm1
vmovsd xmm1, qword [rbp + 0x30]
vmovups xmmword [rcx + rax + 0x40], xmm0
vmovsd qword [rcx + rax + 0x50], xmm1
inc dword [rbx]
xor ecx, ecx
mov ebx, dword [rsp + 0x38]
mov eax, ebx
and eax, 0x10000000
mov qword [r14 + 0x3e90], rcx
mov dword [rsp + 0x64], eax
je 0x18002ddd2
inc dword [r14 + 0x4080]
mov ecx, ebx
and ecx, 0x4000000
mov dword [rsp + 0x3c], ecx
je 0x18002de1d
lea rcx, [r14 + 0x4070]
movsxd rax, dword [rcx]
imul rbx, rax, 0x38
add rbx, qword [r14 + 0x4068]
mov rdx, rbx
mov qword [rbx + 8], rdi
mov eax, dword [rsi + 0x138]
mov dword [rbx + 0x18], eax
vzeroupper
call fcn.1800390d0
mov eax, dword [rbx]
mov ebx, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x3c]
mov dword [rdi + 0xac], eax
mov r10d, dword [rsp + 0x60]
mov r11d, dword [rsp + 0x48]
cmp r11d, r10d
je 0x18002ded1
mov qword [rdi + 0x350], r15
mov qword [rdi + 0x378], rdi
mov qword [rdi + 0x370], rdi
mov qword [rdi + 0x368], rdi
mov qword [rdi + 0x360], rdi
test r15, r15
je 0x18002dea2
mov eax, ebx
and eax, 0x3000000
cmp eax, 0x1000000
jne 0x18002de74
mov rax, qword [r15 + 0x360]
mov qword [rdi + 0x360], rax
test ecx, ecx
je 0x18002de86
mov rax, qword [r15 + 0x368]
mov qword [rdi + 0x368], rax
bt ebx, 0x1b
jb 0x18002dea2
test ebx, 0x5000000
je 0x18002dea2
mov rax, qword [r15 + 0x370]
mov qword [rdi + 0x370], rax
test dword [rdi + 0xc], 0x800000
je 0x18002deca
mov rcx, rdi
nop
mov rax, qword [rcx + 0x350]
mov qword [rdi + 0x378], rax
mov rcx, rax
test dword [rax + 0xc], 0x800000
jne 0x18002deb0
mov qword [rdi + 0x358], rsi
xor dl, dl
xor r15b, r15b
xor r12b, r12b
mov byte [rsp + 0x32], dl
test byte [r14 + 0x3f90], 1
je 0x18002df82
mov r8d, dword [r14 + 0x3f94]
movzx ecx, byte [rdi + 0xbc]
movsx eax, cl
test r8d, eax
setne dl
mov byte [rsp + 0x32], dl
test r8d, eax
je 0x18002df70
vmovss xmm1, dword [r14 + 0x3fac]
vmovss xmm0, dword [r14 + 0x3fa8]
vmulss xmm2, xmm0, xmm0
vmulss xmm1, xmm1, xmm1
vaddss xmm3, xmm2, xmm1
vcomiss xmm3, dword [0x1800f4c90]
jbe 0x18002df70
vmovsd xmm0, qword [r14 + 0x3fa0]
mov eax, dword [rdi + 0xbc]
and ecx, 0xf1
and eax, 0xffffff00
vmovsd qword [rdi + 0xc0], xmm0
vmovsd xmm1, qword [r14 + 0x3fa8]
or ecx, eax
mov dword [rdi + 0xbc], ecx
vmovsd qword [rdi + 0xc8], xmm1
jmp 0x18002df82
lea rdx, [r14 + 0x3fa0]
mov rcx, rdi
vzeroupper
call fcn.180030460
test byte [r14 + 0x3f90], 2
vxorps xmm13, xmm13, xmm13
je 0x18002dfdd
movsx eax, byte [rdi + 0xbd]
lea rdx, [r14 + 0x3fb0]
mov r8d, dword [r14 + 0x3f98]
and eax, r8d
je 0x18002dfbb
vmovss xmm0, dword [rdx]
vcomiss xmm0, xmm13
jbe 0x18002dfbb
mov r15b, 1
jmp 0x18002dfbf
test eax, eax
je 0x18002dfd2
vmovss xmm0, dword [r14 + 0x3fb4]
vcomiss xmm0, xmm13
jbe 0x18002dfd2
mov r12b, 1
mov rcx, rdi
vzeroupper
call fcn.1800305c0
test byte [r14 + 0x3f90], 0x80
je 0x18002e01c
vmovss xmm0, dword [r14 + 0x3fc0]
xor eax, eax
vcomiss xmm0, xmm13
jb 0x18002e001
vmovss dword [rdi + 0x74], xmm0
mov dword [rdi + 0x7c], eax
vmovss xmm0, dword [r14 + 0x3fc4]
vcomiss xmm0, xmm13
jb 0x18002e01c
vmovss dword [rdi + 0x78], xmm0
mov dword [rdi + 0x80], eax
test byte [r14 + 0x3f90], 4
je 0x18002e18d
vmovsd xmm0, qword [r14 + 0x3fb8]
vmovsd qword [rdi + 0x40], xmm0
xor esi, esi
test byte [r14 + 0x3f90], r13b
je 0x18002e08a
mov ecx, dword [r14 + 0x3f9c]
movzx edx, byte [r14 + 0x3fc8]
test ecx, ecx
je 0x18002e061
movsx eax, byte [rdi + 0xbe]
test ecx, eax
je 0x18002e08a
movzx ecx, byte [rdi + 0xbe]
mov eax, dword [rdi + 0xbc]
and ecx, 0xf1
shl ecx, 0x10
and eax, 0xff00ffff
or ecx, eax
mov byte [rdi + 0x99], dl
mov dword [rdi + 0xbc], ecx
test byte [r14 + 0x3f90], 0x20
je 0x18002e0a9
mov rcx, rdi
vzeroupper
call fcn.180030060
mov r10d, dword [rsp + 0x60]
mov r11d, dword [rsp + 0x48]
cmp byte [rdi + 0x9c], 0
je 0x18002e0c7
and byte [rdi + 0xbc], 0xf7
and byte [rdi + 0xbd], 0xf7
and byte [rdi + 0xbe], 0xf7
mov r8d, 1
cmp r11d, r10d
je 0x18002fadb
vmovaps xmmword [rsp + 0x1f0], xmm6
mov eax, ebx
vmovaps xmmword [rsp + 0x1e0], xmm7
and eax, 0x3000000
vmovaps xmmword [rsp + 0x1d0], xmm8
vmovaps xmmword [rsp + 0x1c0], xmm9
vmovaps xmmword [rsp + 0x1b0], xmm10
vmovaps xmmword [rsp + 0x1a0], xmm11
vmovaps xmmword [rsp + 0x190], xmm12
vmovaps xmmword [rsp + 0x170], xmm14
mov byte [rdi + 0x96], r8b
mov byte [rdi + 0xa0], 0
vmovaps xmmword [rsp + 0x160], xmm15
mov dword [rsp + 0x40], eax
movzx eax, byte [rdi + 0xb9]
mov dword [rdi + 0x220], 0xff7fffff
mov dword [rdi + 0x224], 0xff7fffff
mov dword [rdi + 0x228], 0x7f7fffff
mov dword [rdi + 0x22c], 0x7f7fffff
mov ecx, dword [rdi + 0xd4]
mov byte [rsp + 0x34], al
cmp ecx, r8d
jge 0x18002e1c2
test ecx, ecx
je 0x18002e1a1
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x18002e1a4
cmp r11d, r10d
je 0x18002e038
xor esi, esi
mov qword [rdi + 0x40], rsi
jmp 0x18002e03a
mov eax, r13d
cmp eax, r8d
lea rcx, [rdi + 0xd0]
mov edx, r8d
cmovg edx, eax
vzeroupper
call fcn.1800214c0
mov r8d, 1
mov dword [rdi + 0xd0], r8d
mov rcx, qword [rdi + 0x280]
vzeroupper
call fcn.1800415e0
cmp byte [rdi + 0x3b8], 0
mov dword [rdi + 0x198], 0xffffffff
je 0x18002e227
mov rcx, qword [rdi + 0x280]
mov edx, dword [rdi + 0x3b0]
add rcx, 0x10
mov byte [rdi + 0x3b8], 0
call fcn.180039a00
mov rcx, qword [rdi + 0x280]
mov edx, dword [rdi + 0x3b4]
add rcx, 0x20
call fcn.180039840
xor eax, eax
mov qword [rdi + 0x3b0], rax
cmp qword [r14 + 0x4210], 0
mov r9, qword [rsp + 0x50]
je 0x18002e2f6
test dword [rdi + 0xc], 0x80000
jne 0x18002e2f6
test r9, r9
je 0x18002e2f6
mov r10, qword [rbp - 0x48]
mov r9, qword [rdi]
mov rax, r10
mov r8, r9
sub r8, r10
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x18002e273
inc rax
test ecx, ecx
jne 0x18002e260
test edx, edx
je 0x18002e2f1
movsxd rsi, dword [rdi + 0x58]
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [r10 + rbx], 0
jne 0x18002e282
inc rbx
cmp rsi, rbx
jae 0x18002e2d9
test r9, r9
je 0x18002e2ab
mov rax, qword [0x180186220]
test rax, rax
je 0x18002e2ab
dec dword [rax + 0xf4]
mov rcx, r9
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [0x180186220]
test rax, rax
je 0x18002e2c6
inc dword [rax + 0xf4]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r10, qword [rbp - 0x48]
mov rsi, rbx
mov r9, rax
mov r8, rbx
mov rdx, r10
mov rcx, r9
call sub.VCRUNTIME140.dll_memcpy
mov ebx, dword [rsp + 0x38]
mov qword [rdi], rax
mov dword [rdi + 0x58], esi
mov r9, qword [rsp + 0x50]
lea r8, [rdi + 0x38]
mov rcx, rdi
lea rdx, [rdi + 0x30]
call fcn.18002bb40
movzx eax, byte [rdi + 0xb8]
test al, al
jle 0x18002e319
dec al
mov byte [rdi + 0xb8], al
movzx eax, byte [rdi + 0xb9]
test al, al
jle 0x18002e32c
dec al
mov byte [rdi + 0xb9], al
movzx eax, byte [rdi + 0xba]
test al, al
jle 0x18002e33f
dec al
mov byte [rdi + 0xba], al
test r9, r9
jne 0x18002e355
test r15b, r15b
je 0x18002e34e
test r12b, r12b
jne 0x18002e355
mov byte [rdi + 0xb9], 1
xor r9d, r9d
cmp byte [rsp + 0x31], r9b
je 0x18002e39b
test ebx, 0x6000000
je 0x18002e39b
mov byte [rdi + 0xb9], 1
test bl, 0x40
je 0x18002e39b
test r15b, r15b
jne 0x18002e380
mov dword [rdi + 0x28], r9d
mov dword [rdi + 0x20], r9d
test r12b, r12b
jne 0x18002e38d
mov dword [rdi + 0x2c], r9d
mov dword [rdi + 0x24], r9d
mov qword [r8], 0
mov qword [rdx], 0
mov rcx, qword [0x180186220]
mov rax, qword [rcx + 0x4090]
mov rsi, qword [rax]
mov qword [rdi + 0x10], rsi
mov qword [rcx + 0x3e90], rdi
movsxd rax, dword [rdi + 0x198]
cmp eax, 0xffffffff
je 0x18002e3d3
imul rdx, rax, 0x218
add rdx, qword [rcx + 0x4320]
jmp 0x18002e3d6
mov rdx, r9
vmovss xmm0, dword [rcx + 0x3c04]
mov qword [rcx + 0x42f8], rdx
mov rax, qword [rdi + 0x350]
vmulss xmm1, xmm0, dword [rdi + 0x278]
test rax, rax
je 0x18002e401
vmulss xmm1, xmm1, dword [rax + 0x278]
mov eax, ebx
and eax, 0x1000000
mov dword [rsp + 0x44], eax
vmovss dword [rcx + 0x3c18], xmm1
vmovss dword [rcx + 0x3c00], xmm1
je 0x18002e429
vmovss xmm1, dword [r14 + 0x3810]
jmp 0x18002e44b
test ebx, 0x6000000
je 0x18002e442
bt ebx, 0x1b
jb 0x18002e442
vmovss xmm1, dword [r14 + 0x3818]
jmp 0x18002e44b
vmovss xmm1, dword [r14 + 0x37f4]
vmovss dword [rdi + 0x54], xmm1
vmovsd xmm0, qword [r14 + 0x37e8]
mov eax, ebx
and eax, 0x5010000
vmovsd qword [rdi + 0x48], xmm0
cmp eax, 0x1000000
jne 0x18002e494
vucomiss xmm1, xmm13
jp 0x18002e494
jne 0x18002e494
bt ebx, 0xa
jae 0x18002e486
vmovss xmm0, dword [r14 + 0x37ec]
jmp 0x18002e48b
vmovaps xmm0, xmm13
vmovss dword [rdi + 0x4c], xmm0
mov dword [rdi + 0x48], r9d
vmovss xmm0, dword [rdi + 0x48]
vmaxss xmm1, xmm0, dword [r14 + 0x382c]
vmaxss xmm2, xmm1, dword [r14 + 0x3ff4]
vmovss dword [rdi + 0x148], xmm2
mov eax, dword [r14 + 0x3ff8]
mov dword [rdi + 0x14c], eax
test bl, 0x21
jne 0x18002e5fe
mov edx, dword [rdi + 0xc]
test dl, 1
je 0x18002e4d8
vmovaps xmm0, xmm13
jmp 0x18002e50c
mov rax, qword [rdi + 0x350]
vmovss xmm0, dword [rcx + 0x3c04]
vmulss xmm2, xmm0, dword [rdi + 0x278]
test rax, rax
je 0x18002e4fc
vmulss xmm2, xmm2, dword [rax + 0x278]
vmovss xmm0, dword [rcx + 0x3820]
vaddss xmm1, xmm0, xmm0
vaddss xmm0, xmm1, xmm2
vmovss xmm1, dword [rdi + 0x18]
vaddss xmm2, xmm1, dword [rdi + 0x28]
vaddss xmm5, xmm0, dword [rdi + 0x1c]
vmovss xmm4, dword [rdi + 0x1c]
cmp qword [r14 + 0x3e98], rdi
jne 0x18002e5ca
cmp dword [r14 + 0x3ec8], 0
jne 0x18002e5ca
cmp dword [r14 + 0x3ecc], 0
jne 0x18002e5ca
mov rax, qword [rcx + 0x3e90]
vminss xmm0, xmm2, dword [rax + 0x228]
vmaxss xmm3, xmm1, dword [rax + 0x220]
vmovss xmm1, dword [rcx + 0x3844]
vminss xmm2, xmm5, dword [rax + 0x22c]
vmaxss xmm4, xmm4, dword [rax + 0x224]
vaddss xmm6, xmm1, xmm0
vmovss xmm0, dword [rcx + 0x3848]
vaddss xmm7, xmm0, xmm2
vsubss xmm2, xmm3, xmm1
vmovss xmm1, dword [rcx + 0xdfc]
vcomiss xmm1, xmm2
vsubss xmm5, xmm4, xmm0
jb 0x18002e5ca
vmovss xmm0, dword [rcx + 0xe00]
vcomiss xmm0, xmm5
jb 0x18002e5ca
vcomiss xmm6, xmm1
jbe 0x18002e5ca
vcomiss xmm7, xmm0
jbe 0x18002e5ca
cmp word [r14 + 0x3742], 2
jne 0x18002e5ca
mov byte [rdi + 0x9a], 1
cmp byte [rdi + 0x9a], 0
je 0x18002e605
cmp byte [rdi + 0x99], 0
sete al
mov byte [rdi + 0x99], al
bt edx, 8
jb 0x18002e605
vcomiss xmm13, dword [rcx + 0x537c]
jb 0x18002e605
mov eax, dword [rcx + 0x1c]
mov dword [rcx + 0x537c], eax
jmp 0x18002e605
mov byte [rdi + 0x99], 0
mov rdx, rdi
mov byte [rdi + 0x9a], 0
lea rcx, [rsp + 0x70]
call fcn.18002bc60
movzx eax, byte [rsp + 0x30]
mov byte [rsp + 0x33], al
mov eax, ebx
and eax, 0x40
mov dword [rbp - 0x78], eax
je 0x18002e668
cmp byte [rdi + 0x99], 0
jne 0x18002e668
test r15b, r15b
jne 0x18002e64a
vmovss xmm0, dword [rsp + 0x70]
vmovss dword [rdi + 0x28], xmm0
mov byte [rsp + 0x30], 1
test r12b, r12b
jne 0x18002e70f
vmovss xmm0, dword [rsp + 0x74]
vmovss dword [rdi + 0x2c], xmm0
mov byte [rsp + 0x33], 1
jmp 0x18002e70f
movzx eax, byte [rdi + 0xb0]
test al, al
jg 0x18002e680
cmp byte [rdi + 0xb1], 0
jle 0x18002e70f
test r15b, r15b
jne 0x18002e6af
test al, al
jle 0x18002e6af
cmp byte [rdi + 0xb3], r15b
je 0x18002e69f
vmovss xmm0, dword [rdi + 0x28]
vmaxss xmm1, xmm0, dword [rsp + 0x70]
jmp 0x18002e6a5
vmovss xmm1, dword [rsp + 0x70]
vmovss dword [rdi + 0x28], xmm1
mov byte [rsp + 0x30], 1
test r12b, r12b
jne 0x18002e6e3
cmp byte [rdi + 0xb1], r12b
jle 0x18002e6e3
cmp byte [rdi + 0xb3], r12b
je 0x18002e6d3
vmovss xmm0, dword [rdi + 0x2c]
vmaxss xmm1, xmm0, dword [rsp + 0x74]
jmp 0x18002e6d9
vmovss xmm1, dword [rsp + 0x74]
vmovss dword [rdi + 0x2c], xmm1
mov byte [rsp + 0x33], 1
cmp byte [rdi + 0x99], 0
jne 0x18002e70f
test dword [rdi + 0xc], 0x100
mov rcx, qword [0x180186220]
jne 0x18002e70f
vcomiss xmm13, dword [rcx + 0x537c]
jb 0x18002e70f
mov eax, dword [rcx + 0x1c]
mov dword [rcx + 0x537c], eax
lea r8, [rdi + 0x28]
mov rdx, rdi
lea rcx, [rbp - 0x50]
call fcn.18002b910
cmp byte [rdi + 0x99], 0
mov r12d, dword [rsp + 0x44]
vmovss xmm3, dword [rax]
vmovss xmm0, dword [rax + 4]
vmovss dword [rdi + 0x28], xmm3
vmovss dword [rdi + 0x2c], xmm0
je 0x18002e7af
test r12d, r12d
jne 0x18002e7af
test byte [rdi + 0xc], 1
mov rdx, qword [0x180186220]
je 0x18002e759
vmovaps xmm1, xmm13
jmp 0x18002e78d
mov rax, qword [rdi + 0x350]
vmovss xmm0, dword [rdx + 0x3c04]
vmulss xmm2, xmm0, dword [rdi + 0x278]
test rax, rax
je 0x18002e77d
vmulss xmm2, xmm2, dword [rax + 0x278]
vmovss xmm0, dword [rdx + 0x3820]
vaddss xmm1, xmm0, xmm0
vaddss xmm1, xmm1, xmm2
vaddss xmm0, xmm3, dword [rdi + 0x18]
vaddss xmm1, xmm1, dword [rdi + 0x1c]
vsubss xmm0, xmm0, dword [rdi + 0x18]
vsubss xmm1, xmm1, dword [rdi + 0x1c]
vmovss dword [rsp + 0x58], xmm0
vmovss dword [rsp + 0x5c], xmm1
jmp 0x18002e7c1
vmovsd xmm0, qword [rdi + 0x28]
mov rdx, qword [0x180186220]
vmovsd qword [rsp + 0x58], xmm0
mov ecx, dword [rdi + 0xc]
lea rax, [rsp + 0x58]
vmovsd xmm0, qword [rax]
vmovsd qword [rdi + 0x20], xmm0
test cl, 1
je 0x18002e7de
vmovaps xmm3, xmm13
jmp 0x18002e812
mov rax, qword [rdi + 0x350]
vmovss xmm0, dword [rdx + 0x3c04]
vmulss xmm2, xmm0, dword [rdi + 0x278]
test rax, rax
je 0x18002e802
vmulss xmm2, xmm2, dword [rax + 0x278]
vmovss xmm0, dword [rdx + 0x3820]
vaddss xmm1, xmm0, xmm0
vaddss xmm3, xmm1, xmm2
bt ecx, 0xa
jae 0x18002e856
mov rax, qword [rdi + 0x350]
vmovss xmm0, dword [rdx + 0x3c04]
vmulss xmm1, xmm0, dword [rdi + 0x278]
test rax, rax
je 0x18002e83c
vmulss xmm1, xmm1, dword [rax + 0x278]
vmovss xmm0, dword [rdx + 0x3820]
vaddss xmm1, xmm1, dword [rdi + 0x14c]
vaddss xmm0, xmm0, xmm0
vaddss xmm2, xmm1, xmm0
jmp 0x18002e85b
vmovaps xmm2, xmm13
cmp byte [rsp + 0x31], 0
movzx r15d, byte [rsp + 0x32]
vaddss xmm12, xmm2, xmm3
vmovss dword [rbp - 0x7c], xmm12
je 0x18002e8b6
mov eax, ebx
mov dword [rdi + 0xb4], 0xffffffff
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x18002e8b6
test r15b, r15b
jne 0x18002e8b6
movsxd rax, dword [r14 + 0x4070]
imul rcx, rax, 0x38
mov rax, qword [r14 + 0x4078]
vmovss xmm0, dword [rcx + rax - 0x14]
vmovss xmm1, dword [rcx + rax - 0x10]
vmovss dword [rdi + 0x18], xmm0
vmovss dword [rdi + 0x1c], xmm1
test r12d, r12d
je 0x18002e939
mov rdx, qword [rsp + 0x78]
lea rbx, [rdx + 0x178]
movzx eax, word [rbx]
mov word [rdi + 0xa4], ax
mov ecx, dword [rbx + 4]
mov r8d, dword [rbx]
cmp r8d, ecx
jne 0x18002e905
inc r8d
test ecx, ecx
je 0x18002e8ee
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
lea r13d, [rcx + rax]
cmp r13d, r8d
mov rcx, rbx
cmovg r8d, r13d
mov edx, r8d
call fcn.180039420
mov rdx, qword [rsp + 0x78]
movsxd rcx, dword [rbx]
mov rax, qword [rbx + 8]
mov qword [rax + rcx*8], rdi
inc dword [rbx]
mov ebx, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x40]
test ebx, ebx
jne 0x18002e941
test r15b, r15b
jne 0x18002e941
cmp eax, 0x3000000
je 0x18002e941
vmovsd xmm0, qword [rdx + 0xe0]
vmovsd qword [rdi + 0x18], xmm0
jmp 0x18002e941
mov ebx, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x40]
vmovss xmm2, dword [rdi + 0xc0]
vucomiss xmm2, dword [0x1800f4fe4]
jp 0x18002e955
je 0x18002e9ab
cmp byte [rdi + 0xb9], 0
jne 0x18002e9ab
vmovss xmm0, dword [rdi + 0xc8]
vmulss xmm1, xmm0, dword [rdi + 0x20]
vmovss xmm0, dword [rdi + 0xcc]
vmulss xmm3, xmm0, dword [rdi + 0x24]
vsubss xmm2, xmm2, xmm1
vmovss xmm1, dword [rdi + 0xc4]
vmovss dword [rsp + 0x58], xmm2
vsubss xmm2, xmm1, xmm3
xor r8d, r8d
lea rdx, [rsp + 0x58]
mov rcx, rdi
vmovss dword [rsp + 0x5c], xmm2
call fcn.180030460
mov r13d, dword [rsp + 0x38]
jmp 0x18002ea0c
cmp dword [rsp + 0x64], 0
je 0x18002e9c5
mov rdx, rdi
lea rcx, [rbp - 0x40]
call fcn.180033770
mov r13d, dword [rsp + 0x38]
jmp 0x18002e9f9
test ebx, ebx
je 0x18002e9d5
test r15b, r15b
jne 0x18002e9d5
cmp byte [rsp + 0x34], r15b
jg 0x18002e9b2
mov r13d, dword [rsp + 0x38]
bt r13d, 0x19
jae 0x18002ea0c
test r15b, r15b
jne 0x18002ea0c
cmp eax, 0x3000000
je 0x18002ea0c
mov rdx, rdi
lea rcx, [rbp - 0x40]
call fcn.180033770
vmovss xmm1, dword [rax + 4]
vmovss xmm0, dword [rax]
vmovss dword [rdi + 0x18], xmm0
vmovss dword [rdi + 0x1c], xmm1
vmovss xmm5, dword [rsi + 0x18]
vmovss xmm4, dword [rsi + 0x14]
vmovss xmm6, dword [rsi + 4]
vmovss xmm7, dword [rsi + 8]
vaddss xmm8, xmm6, dword [rsi + 0xc]
vaddss xmm9, xmm7, dword [rsi + 0x10]
vmovss xmm1, dword [r14 + 0x3888]
vmaxss xmm2, xmm1, dword [r14 + 0x3890]
vaddss xmm1, xmm5, dword [rsi + 0x20]
vmovss xmm0, dword [r14 + 0x388c]
vmaxss xmm3, xmm0, dword [r14 + 0x3894]
vaddss xmm0, xmm4, dword [rsi + 0x1c]
vsubss xmm10, xmm1, xmm3
vaddss xmm3, xmm3, xmm5
vsubss xmm11, xmm0, xmm2
vaddss xmm4, xmm2, xmm4
vmovss dword [rbp - 0x2c], xmm3
vmovss dword [rbp - 0x60], xmm6
vmovss dword [rbp - 0x5c], xmm7
vmovss dword [rbp - 0x58], xmm8
vmovss dword [rbp - 0x54], xmm9
vmovss dword [rbp - 0x30], xmm4
vmovss dword [rbp - 0x28], xmm11
vmovss dword [rbp - 0x24], xmm10
test r15b, r15b
jne 0x18002eb5e
test r12d, r12d
jne 0x18002eb5e
cmp byte [rdi + 0xb0], r12b
jg 0x18002eb5e
cmp byte [rdi + 0xb1], r12b
jg 0x18002eb5e
vsubss xmm0, xmm8, xmm6
vcomiss xmm0, xmm13
jbe 0x18002eb5e
mov r12, qword [0x180186220]
vsubss xmm0, xmm9, xmm7
vcomiss xmm0, xmm13
jbe 0x18002eb65
vmovss xmm1, dword [rdi + 0x24]
cmp byte [r12 + 0x7f], r15b
je 0x18002eb2b
test byte [rdi + 0xc], 1
jne 0x18002eb2b
mov rax, qword [rdi + 0x350]
vmovss xmm0, dword [r12 + 0x3c04]
vmulss xmm2, xmm0, dword [rdi + 0x278]
test rax, rax
je 0x18002eb19
vmulss xmm2, xmm2, dword [rax + 0x278]
vmovss xmm0, dword [r12 + 0x3820]
vaddss xmm1, xmm0, xmm0
vaddss xmm1, xmm1, xmm2
vmovss xmm2, dword [rdi + 0x1c]
vsubss xmm0, xmm4, dword [rdi + 0x20]
vsubss xmm1, xmm3, xmm1
vcomiss xmm1, xmm2
ja 0x18002eb43
vminss xmm1, xmm10, xmm2
vmovss xmm2, dword [rdi + 0x18]
vcomiss xmm0, xmm2
ja 0x18002eb52
vminss xmm0, xmm11, xmm2
vmovss dword [rdi + 0x18], xmm0
vmovss dword [rdi + 0x1c], xmm1
jmp 0x18002eb65
mov r12, qword [0x180186220]
cmp dword [rsp + 0x44], 0
vcvttss2si eax, dword [rdi + 0x18]
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vcvttss2si eax, dword [rdi + 0x1c]
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rdi + 0x1c], xmm0
vmovss dword [rdi + 0x18], xmm1
je 0x18002eb9b
vmovss xmm0, dword [r14 + 0x380c]
jmp 0x18002ebbe
mov eax, r13d
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x18002ebb5
vmovss xmm0, dword [r14 + 0x3814]
jmp 0x18002ebbe
vmovss xmm0, dword [r14 + 0x37f0]
xor cl, cl
vmovss dword [rdi + 0x50], xmm0
mov dword [rsp + 0x3c], ecx
cmp byte [rsp + 0x31], cl
je 0x18002edf0
bt r13d, 0xc
jb 0x18002edf0
test ebx, ebx
je 0x18002ebe9
mov byte [rsp + 0x3c], 1
jmp 0x18002ebfd
cmp dword [rsp + 0x40], 0
mov edx, 1
movzx ecx, cl
cmove ecx, edx
mov dword [rsp + 0x3c], ecx
mov eax, dword [r12 + 0x4060]
sub eax, 1
js 0x18002edf0
movsxd r10, eax
imul r9, r10, 0x38
mov rdx, r10
lea r8, [r9 + 8]
add r8, qword [r12 + 0x4068]
mov rcx, qword [r8]
test rcx, rcx
je 0x18002ec35
test dword [rcx + 0xc], 0x8000000
jne 0x18002ec44
sub r8, 0x38
sub rdx, 1
jns 0x18002ec24
jmp 0x18002edf0
mov r15, qword [rdi + 0x360]
mov rax, rdi
cmp r15, rcx
je 0x18002edf0
cmp rax, rcx
je 0x18002edf0
mov rax, qword [rax + 0x358]
test rax, rax
jne 0x18002ec57
mov byte [rsp + 0x3c], al
cmp rdi, r15
jne 0x18002edf0
mov r8, qword [r12 + 0x4068]
add r8, 8
add r8, r9
nop dword [rax + rax]
mov rdx, qword [r8]
test rdx, rdx
je 0x18002ed14
test dword [rdx + 0xc], 0x8000000
je 0x18002ed14
cmp byte [rdx + 0x96], 0
jne 0x18002ecb7
cmp byte [rdx + 0x97], 0
je 0x18002ed14
mov rax, rdi
cmp r15, rdx
je 0x18002ed22
nop
cmp rax, rdx
je 0x18002ed22
mov rax, qword [rax + 0x358]
test rax, rax
jne 0x18002ecc0
mov rax, qword [rdx + 0x358]
mov rcx, qword [rax + 0x360]
test rcx, rcx
je 0x18002ed14
mov rax, rdi
cmp r15, rcx
je 0x18002ed26
nop dword [rax]
cmp rax, rcx
je 0x18002ed26
mov rax, qword [rax + 0x358]
test rax, rax
jne 0x18002ecf0
mov rax, qword [rcx + 0x358]
mov rcx, qword [rax + 0x360]
test rcx, rcx
jne 0x18002ece4
sub r8, 0x38
sub r10, 1
jns 0x18002ec90
xor ecx, ecx
mov edx, ecx
mov r8, qword [rdx + 0x360]
mov rdx, qword [r12 + 0x3e38]
movsxd rax, dword [r12 + 0x3e30]
mov r9, rdx
lea rcx, [rdx + rax*8]
cmp rdx, rcx
jae 0x18002ed5e
nop dword [rax]
cmp qword [r9], r15
je 0x18002ed5e
add r9, 8
cmp r9, rcx
jb 0x18002ed50
sub r9, rdx
mov rsi, rdx
sar r9, 3
cmp rdx, rcx
jae 0x18002ed7e
nop dword [rax]
cmp qword [rsi], r8
je 0x18002ed7e
add rsi, 8
cmp rsi, rcx
jb 0x18002ed70
sub rsi, rdx
mov r10, rdx
sar rsi, 3
cmp r9d, esi
jge 0x18002edc4
mov eax, esi
sub eax, r9d
dec eax
movsxd r8, eax
lea eax, [r9 + 1]
movsxd rcx, eax
movsxd rax, r9d
shl r8, 3
lea rdx, [rdx + rcx*8]
lea rcx, [r10 + rax*8]
call sub.VCRUNTIME140.dll_memmove
mov rax, qword [r12 + 0x3e38]
movsxd rcx, esi
mov qword [rax + rcx*8 - 8], r15
jmp 0x18002edf0
lea eax, [rsi + 1]
movsxd rbx, esi
movsxd rcx, eax
sub r9d, esi
movsxd r8, r9d
shl r8, 3
lea rdx, [rdx + rbx*8]
lea rcx, [r10 + rcx*8]
call sub.VCRUNTIME140.dll_memmove
mov rax, qword [r12 + 0x3e38]
mov qword [rax + rbx*8], r15
vmovss xmm2, dword [r14 + 0x3c00]
vmulss xmm3, xmm2, dword [0x1800f4d74]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0x40], xmm0
vmovss xmm0, dword [rdi + 0x50]
vaddss xmm1, xmm0, dword [0x1800f4d60]
vmulss xmm0, xmm2, dword [0x1800f4cec]
vaddss xmm1, xmm1, xmm0
xor r8d, r8d
mov dword [rbp - 0x80], 0xffffffff
cmp byte [r14 + 0x7e], r8b
mov r12d, r8d
vmaxss xmm2, xmm3, xmm1
vcvttss2si eax, xmm2
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
setne r12b
vmovss dword [rsp + 0x58], xmm0
cmp byte [rdi + 0x99], r8b
jne 0x18002ee8d
lea rax, [rbp - 0x30]
mov rcx, rdi
mov qword [rsp + 0x28], rax
lea r9d, [r12 + 1]
lea rax, [rbp + 0x40]
lea r8, [rbp - 0x80]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x70]
call fcn.18002c070
xor r8d, r8d
test al, al
je 0x18002ee8d
mov cl, 1
movzx edx, cl
jmp 0x18002ee97
movzx edx, byte [rsp + 0x30]
movzx ecx, byte [rsp + 0x33]
cmp byte [rdi + 0x99], 0
movzx eax, byte [rbp - 0x80]
mov byte [rdi + 0xa1], al
jne 0x18002f010
cmp qword [rsp + 0x50], 0
vmovss xmm0, dword [rdi + 0x2c]
vmovss xmm5, dword [rdi + 0x28]
vsubss xmm7, xmm0, xmm12
vmovss xmm0, dword [rdi + 0x1e8]
vsubss xmm1, xmm0, dword [rdi + 0x1e0]
vmovss xmm0, dword [rdi + 0x1ec]
vaddss xmm4, xmm1, dword [rdi + 0x8c]
vsubss xmm1, xmm0, dword [rdi + 0x1e4]
vaddss xmm6, xmm1, dword [rdi + 0x90]
jne 0x18002ef05
vmovss dword [rbp - 0x38], xmm13
vmovss dword [rbp - 0x34], xmm13
lea rax, [rbp - 0x38]
jmp 0x18002ef32
vmovss xmm0, dword [rdi + 0x48]
vmovss xmm2, dword [rdi + 0x4c]
vaddss xmm0, xmm0, xmm0
vaddss xmm1, xmm0, dword [rdi + 0x30]
vaddss xmm2, xmm2, xmm2
vaddss xmm0, xmm2, dword [rdi + 0x34]
vmovss dword [rsp + 0x68], xmm0
vmovss dword [rsp + 0x64], xmm1
lea rax, [rsp + 0x64]
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 r13d, 0xe
jb 0x18002ef7e
vcomiss xmm3, xmm1
jbe 0x18002ef7a
test r13b, 8
je 0x18002ef7e
xor cl, cl
jmp 0x18002ef80
mov cl, 1
mov byte [rdi + 0x95], cl
lea rdx, [r14 + 0x3854]
bt r13d, 0xf
jb 0x18002efca
test cl, cl
je 0x18002ef9e
vmovss xmm0, dword [rdx]
jmp 0x18002efa3
vmovaps xmm0, xmm13
vsubss xmm0, xmm4, xmm0
vcomiss xmm8, xmm0
jbe 0x18002efbc
mov eax, r13d
and eax, 0x808
cmp eax, 0x800
je 0x18002efca
mov byte [rdi + 0x94], 0
vmovaps xmm1, xmm13
jmp 0x18002eff1
mov byte [rdi + 0x94], 1
test cl, cl
jne 0x18002efed
vcomiss xmm3, xmm1
jbe 0x18002efe5
test r13b, 8
jne 0x18002efe5
mov cl, 1
jmp 0x18002efe7
xor cl, cl
mov byte [rdi + 0x95], cl
vmovss xmm1, dword [rdx]
test cl, cl
je 0x18002effb
vmovss xmm0, dword [rdx]
jmp 0x18002f000
vmovaps xmm0, xmm13
vmovss dword [rdi + 0x8c], xmm0
vmovss dword [rdi + 0x90], xmm1
mov esi, r13d
and esi, 0x5000000
cmp esi, 0x1000000
jne 0x18002f038
cmp dword [rsp + 0x40], 0x3000000
je 0x18002f038
mov rax, qword [rsp + 0x78]
add rax, 0x220
jmp 0x18002f03c
lea rax, [rbp - 0x60]
test byte [rdi + 0xc], 1
vmovups xmm0, xmmword [rax]
vmovss xmm15, dword [rdi + 0x18]
vmovss xmm3, dword [rdi + 0x1c]
vaddss xmm4, xmm15, dword [rdi + 0x20]
vaddss xmm5, xmm3, dword [rdi + 0x24]
vmovups xmmword [rbp - 0x70], xmm0
je 0x18002f066
vmovaps xmm0, xmm13
jmp 0x18002f0a1
mov rdx, qword [0x180186220]
mov rax, qword [rdi + 0x350]
vmovss xmm0, dword [rdx + 0x3c04]
vmulss xmm2, xmm0, dword [rdi + 0x278]
test rax, rax
je 0x18002f091
vmulss xmm2, xmm2, dword [rax + 0x278]
vmovss xmm0, dword [rdx + 0x3820]
vaddss xmm1, xmm0, xmm0
vaddss xmm0, xmm1, xmm2
vaddss xmm1, xmm15, dword [rdi + 0x28]
vaddss xmm2, xmm0, xmm3
vmovss xmm0, dword [rdi + 0x1c]
vmovss dword [rbp - 0x50], xmm0
vmovss dword [rbp - 0x5c], xmm0
vmovss dword [rsp + 0x64], xmm2
vmovss dword [rbp - 0x58], xmm1
vmovss dword [rbp - 0x54], xmm2
vmovss dword [rbp - 0x60], xmm15
vmovss dword [rdi + 0x1d0], xmm15
vmovss dword [rdi + 0x1d4], xmm3
vmovss dword [rdi + 0x1d8], xmm4
vmovss dword [rdi + 0x1dc], xmm5
vmovss xmm0, dword [rdi + 0x1d0]
vmovss xmm6, dword [rbp - 0x70]
vmovss xmm7, dword [rbp - 0x6c]
vmovss xmm11, dword [rbp - 0x68]
vmovss xmm10, dword [rbp - 0x64]
vmaxss xmm2, xmm0, xmm6
vmovss dword [rdi + 0x1d0], xmm2
vmovss dword [rsp + 0x50], xmm1
vmaxss xmm1, xmm3, xmm7
vmovss dword [rdi + 0x1d4], xmm1
vmovss xmm0, dword [rdi + 0x1d8]
vmovss xmm1, dword [rdi + 0x1dc]
vminss xmm2, xmm0, xmm11
vmovss dword [rdi + 0x1d8], xmm2
vminss xmm0, xmm1, xmm10
vmovss dword [rdi + 0x1dc], xmm0
vmovss xmm2, dword [rdi + 0x18]
vaddss xmm0, xmm2, dword [rdi + 0x20]
vmovss xmm1, dword [rdi + 0x1c]
vsubss xmm13, xmm0, dword [rdi + 0x8c]
vaddss xmm0, xmm1, dword [rdi + 0x24]
vsubss xmm14, xmm0, dword [rdi + 0x90]
mov eax, r13d
and eax, 0x401
vaddss xmm12, xmm12, xmm1
vmovss dword [rdi + 0x1ec], xmm14
vmovss dword [rdi + 0x1e0], xmm2
vmovss dword [rdi + 0x1e4], xmm12
vmovss dword [rdi + 0x1e8], xmm13
cmp eax, 1
jne 0x18002f1ae
vmovss xmm9, dword [rdi + 0x54]
jmp 0x18002f1b7
vmovss xmm9, dword [r14 + 0x3828]
vmovss xmm4, dword [0x1800f4d10]
vmulss xmm0, xmm4, dword [rdi + 0x48]
vcvttss2si eax, xmm0
vaddss xmm0, xmm2, xmm4
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vmaxss xmm3, xmm1, dword [rdi + 0x54]
vaddss xmm2, xmm0, xmm3
vcvttss2si eax, xmm2
vxorps xmm2, xmm2, xmm2
vaddss xmm0, xmm12, xmm4
vaddss xmm1, xmm0, xmm9
vaddss xmm0, xmm13, xmm4
lea r15, [rdi + 0x1f0]
vxorps xmm8, xmm8, xmm8
vcvtsi2ss xmm8, xmm8, eax
vcvttss2si eax, xmm1
vcvtsi2ss xmm2, xmm2, eax
vmovss dword [rdi + 0x1f4], xmm2
vsubss xmm1, xmm0, xmm3
vxorps xmm2, xmm2, xmm2
vcvttss2si eax, xmm1
vcvtsi2ss xmm2, xmm2, eax
vaddss xmm0, xmm14, xmm4
vsubss xmm1, xmm0, dword [rdi + 0x54]
lea r13, [rdi + 0x1f8]
vmovss dword [r13], xmm2
vxorps xmm2, xmm2, xmm2
vcvttss2si eax, xmm1
vcvtsi2ss xmm2, xmm2, eax
vmovss dword [rdi + 0x1fc], xmm2
vmovss dword [r15], xmm8
vmovss xmm0, dword [r15 + 4]
vcomiss xmm7, xmm0
jbe 0x18002f263
vmovaps xmm1, xmm7
jmp 0x18002f267
vminss xmm1, xmm10, xmm0
vcomiss xmm6, xmm8
jbe 0x18002f274
vmovaps xmm0, xmm6
jmp 0x18002f279
vminss xmm0, xmm11, xmm8
vmovss dword [r15], xmm0
vmovss dword [r15 + 4], xmm1
vmovss xmm0, dword [r15 + 0xc]
vcomiss xmm7, xmm0
ja 0x18002f294
vminss xmm7, xmm10, xmm0
vmovss xmm0, dword [r15 + 8]
vcomiss xmm6, xmm0
ja 0x18002f2a4
vminss xmm6, xmm11, xmm0
vmovss dword [r15 + 8], xmm6
vmovss dword [r15 + 0xc], xmm7
vmovss xmm0, dword [rdi + 0x20]
vxorps xmm13, xmm13, xmm13
vcomiss xmm0, xmm13
jbe 0x18002f2d5
test dword [rsp + 0x38], 0x2000040
jne 0x18002f2d5
vmulss xmm1, xmm0, dword [0x1800f4d20]
jmp 0x18002f2e6
vmovss xmm0, dword [r14 + 0x3c00]
vmulss xmm1, xmm0, dword [0x1800f4e74]
vxorps xmm0, xmm0, xmm0
vcvttss2si eax, xmm1
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rdi + 0x250], xmm0
vmovss xmm2, dword [rdi + 0x1e8]
vmovss xmm1, dword [rdi + 0x48]
vaddss xmm0, xmm1, xmm1
vaddss xmm3, xmm0, dword [rdi + 0x30]
vsubss xmm1, xmm2, dword [rdi + 0x1e0]
vsubss xmm0, xmm3, xmm1
vmaxss xmm0, xmm13, xmm0
vmovss dword [rdi + 0x6c], xmm0
vmovss xmm0, dword [rdi + 0x4c]
vmovss xmm1, dword [rdi + 0x1ec]
vsubss xmm2, xmm1, dword [rdi + 0x1e4]
vaddss xmm0, xmm0, xmm0
vaddss xmm3, xmm0, dword [rdi + 0x34]
vsubss xmm0, xmm3, xmm2
vmaxss xmm0, xmm13, xmm0
mov rdx, rdi
lea rcx, [rbp - 0x40]
vmovss dword [rdi + 0x70], xmm0
call fcn.180031f60
mov rcx, qword [rdi + 0x280]
vmovss xmm0, dword [rax]
vmovss xmm1, dword [rax + 4]
vmovss dword [rdi + 0x64], xmm0
vmovss dword [rdi + 0x68], xmm1
mov dword [rdi + 0x74], 0x7f7fffff
mov dword [rdi + 0x78], 0x7f7fffff
mov rax, qword [r14 + 0x3bf8]
mov rdx, qword [rax + 0x40]
mov rdx, qword [rdx + 8]
call fcn.180041c90
mov rcx, qword [0x180186220]
lea r8, [rbp - 0x68]
xor r9d, r9d
lea rdx, [rbp - 0x70]
mov rax, qword [rcx + 0x3e90]
mov byte [rax + 0x98], 1
mov rbx, qword [rcx + 0x3e90]
mov rcx, qword [rbx + 0x280]
call fcn.180041b80
mov rax, qword [rbx + 0x280]
mov rcx, qword [rax + 0x60]
movsxd rdx, dword [rax + 0x58]
add rdx, rdx
vmovss xmm0, dword [rcx + rdx*8 - 0xc]
vmovss xmm1, dword [rcx + rdx*8 - 8]
vmovss xmm2, dword [rcx + rdx*8 - 4]
mov eax, dword [rcx + rdx*8 - 0x10]
mov dword [rbx + 0x220], eax
vmovss dword [rbx + 0x224], xmm0
vmovss dword [rbx + 0x228], xmm1
vmovss dword [rbx + 0x22c], xmm2
xor bl, bl
cmp esi, 0x1000000
jne 0x18002f4ce
cmp dword [rsp + 0x40], 0x3000000
je 0x18002f4ce
mov r9, qword [rsp + 0x78]
movsxd rax, dword [r9 + 0x178]
cmp eax, 2
jl 0x18002f497
mov rcx, rax
mov rax, qword [r9 + 0x180]
mov rdx, qword [rax + rcx*8 - 0x10]
test rdx, rdx
je 0x18002f497
vmovss xmm1, dword [rdi + 0x1c]
vmovss xmm2, dword [rdx + 0x1c]
vaddss xmm0, xmm2, dword [rdx + 0x24]
vcomiss xmm0, xmm1
vmovss xmm4, dword [rdx + 0x18]
vmovss xmm3, dword [rdi + 0x18]
vaddss xmm6, xmm4, dword [rdx + 0x20]
vaddss xmm7, xmm3, dword [rdi + 0x20]
vaddss xmm5, xmm1, dword [rdi + 0x24]
jbe 0x18002f497
vcomiss xmm5, xmm2
jbe 0x18002f497
vcomiss xmm6, xmm3
jbe 0x18002f497
vcomiss xmm7, xmm4
jbe 0x18002f497
mov r8b, 1
jmp 0x18002f49a
xor r8b, r8b
mov rdx, qword [rdi + 0x280]
movsxd rax, dword [rdx]
imul rcx, rax, 0x38
mov rax, qword [rdx + 8]
cmp dword [rcx + rax - 0x18], 0
jne 0x18002f4ce
mov rax, qword [r9 + 0x280]
cmp dword [rax + 0x20], 0
jle 0x18002f4ce
test r8b, r8b
jne 0x18002f4ce
mov bl, 1
mov qword [rdi + 0x280], rax
mov rax, qword [r14 + 0x4200]
test rax, rax
jne 0x18002f4e1
mov rax, qword [r14 + 0x4098]
cmp byte [rsp + 0x3c], 0
jne 0x18002f502
test rax, rax
je 0x18002f4fd
mov rax, qword [rax + 0x370]
cmp qword [rdi + 0x370], rax
je 0x18002f502
xor r8b, r8b
jmp 0x18002f505
mov r8b, 1
vmovss xmm0, dword [rsp + 0x58]
lea rax, [rbp + 0x40]
mov rcx, rdi
vmovss dword [rsp + 0x28], xmm0
lea r9d, [r12 + 1]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x60]
call fcn.18002cf60
test bl, bl
je 0x18002f53d
lea rax, [rdi + 0x288]
mov qword [rdi + 0x280], rax
mov esi, dword [rsp + 0x38]
mov ecx, esi
vmovss xmm6, dword [rdi + 0x40]
shr ecx, 3
not cl
and cl, 1
vucomiss xmm6, xmm13
jp 0x18002f596
jne 0x18002f596
vmovss xmm0, dword [rdi + 0x48]
vmovss xmm1, dword [rdi + 0x20]
mov eax, esi
vaddss xmm2, xmm0, xmm0
and eax, 0x808
vsubss xmm2, xmm1, xmm2
vsubss xmm3, xmm2, dword [rdi + 0x8c]
cmp eax, 0x800
jne 0x18002f58c
vmovss xmm0, dword [rdi + 0x30]
vmaxss xmm10, xmm0, xmm3
jmp 0x18002f59a
vxorps xmm0, xmm0, xmm0
vmaxss xmm10, xmm0, xmm3
jmp 0x18002f59a
vmovaps xmm10, xmm6
vmovss xmm5, dword [rdi + 0x44]
vucomiss xmm5, xmm13
jp 0x18002f5e5
jne 0x18002f5e5
vmovss xmm0, dword [rdi + 0x4c]
vmovss xmm1, dword [rdi + 0x24]
vmovss xmm14, dword [rbp - 0x7c]
vaddss xmm2, xmm0, xmm0
vsubss xmm2, xmm1, xmm2
vsubss xmm0, xmm2, xmm14
vsubss xmm3, xmm0, dword [rdi + 0x90]
test cl, cl
je 0x18002f5db
vmovss xmm0, dword [rdi + 0x34]
vmaxss xmm9, xmm0, xmm3
jmp 0x18002f5ee
vxorps xmm0, xmm0, xmm0
vmaxss xmm9, xmm0, xmm3
jmp 0x18002f5ee
vmovss xmm14, dword [rbp - 0x7c]
vmovaps xmm9, xmm5
vucomiss xmm6, xmm13
vmovss xmm7, dword [rdi + 0x48]
vmovss xmm11, dword [rdi + 0x64]
vmovss xmm0, dword [rdi + 0x1e0]
vmaxss xmm1, xmm7, dword [rdi + 0x54]
vmovss xmm8, dword [rdi + 0x4c]
vmovss xmm12, dword [rdi + 0x68]
vsubss xmm2, xmm0, xmm11
vmovss xmm0, dword [rdi + 0x1e4]
vaddss xmm2, xmm2, xmm1
vcvttss2si eax, xmm2
vmaxss xmm2, xmm8, dword [rdi + 0x54]
vsubss xmm1, xmm0, xmm12
vaddss xmm2, xmm2, xmm1
vxorps xmm0, xmm0, xmm0
vxorps xmm4, xmm4, xmm4
vcvtsi2ss xmm4, xmm4, eax
vaddss xmm1, xmm10, xmm4
vmovaps xmm10, xmmword [rsp + 0x1b0]
vcvttss2si eax, xmm2
vcvtsi2ss xmm0, xmm0, eax
vaddss xmm2, xmm9, xmm0
vmovss xmm9, dword [rdi + 0x1c]
vshufps xmm3, xmm0, xmm0, 0
vinsertps xmm3, xmm3, xmm1, 0x20
vinsertps xmm3, xmm3, xmm2, 0x30
vmovss xmm3, xmm3, xmm4
vmovss xmm4, dword [rdi + 0x18]
vsubss xmm0, xmm4, xmm11
vaddss xmm2, xmm0, xmm7
vinsertf128 ymm3, ymm3, xmm3, 1
vmovups ymmword [rdi + 0x200], ymm3
vsubss xmm0, xmm9, xmm12
vaddss xmm1, xmm0, xmm8
vaddss xmm3, xmm1, xmm14
vmovss dword [rdi + 0x230], xmm2
vmovss dword [rdi + 0x234], xmm3
jp 0x18002f6ca
jne 0x18002f6ca
vmovss xmm0, dword [rdi + 0x20]
vaddss xmm1, xmm7, xmm7
vsubss xmm1, xmm0, xmm1
vsubss xmm6, xmm1, dword [rdi + 0x8c]
vucomiss xmm5, xmm13
vaddss xmm0, xmm6, xmm2
vmovss dword [rdi + 0x238], xmm0
jp 0x18002f6fa
jne 0x18002f6fa
vmovss xmm0, dword [rdi + 0x24]
vaddss xmm1, xmm8, xmm8
vsubss xmm1, xmm0, xmm1
vsubss xmm2, xmm1, xmm14
vsubss xmm5, xmm2, dword [rdi + 0x90]
xor r12d, r12d
lea rbx, [rdi + 0x150]
vaddss xmm0, xmm5, xmm3
vmovss dword [rdi + 0x23c], xmm0
vaddss xmm1, xmm7, xmm13
vsubss xmm0, xmm1, xmm11
vmovss dword [rdi + 0x124], xmm0
mov qword [rdi + 0x128], r12
vcvtss2sd xmm1, xmm4, xmm4
vcvtss2sd xmm0, xmm7, xmm7
vaddsd xmm2, xmm1, xmm0
vxorpd xmm0, xmm0, xmm0
vcvtss2sd xmm1, xmm11, xmm11
vmovaps xmm11, xmmword [rsp + 0x1a0]
vsubsd xmm3, xmm2, xmm1
vaddsd xmm5, xmm3, xmm0
vcvtss2sd xmm1, xmm9, xmm9
vmovaps xmm9, xmmword [rsp + 0x1c0]
vcvtss2sd xmm0, xmm8, xmm8
vaddsd xmm2, xmm1, xmm0
vcvtss2sd xmm1, xmm12, xmm12
vmovaps xmm12, xmmword [rsp + 0x190]
vsubsd xmm3, xmm2, xmm1
vcvtss2sd xmm0, xmm14, xmm14
vmovaps xmm14, xmmword [rsp + 0x170]
vaddsd xmm4, xmm3, xmm0
vcvtsd2ss xmm1, xmm5, xmm5
vmovss dword [rdi + 0xf0], xmm1
vcvtsd2ss xmm2, xmm4, xmm4
vmovss dword [rdi + 0xf4], xmm2
vmovss xmm0, dword [rdi + 0xf0]
vcvtss2sd xmm0, xmm0, xmm0
vsubsd xmm1, xmm5, xmm0
vinsertps xmm2, xmm2, xmm2, 0xe
vcvtss2sd xmm2, xmm2, xmm2
vsubsd xmm0, xmm4, xmm2
vcvtsd2ss xmm3, xmm1, xmm1
vmovss dword [rdi + 0x130], xmm3
vcvtsd2ss xmm1, xmm0, xmm0
vmovss dword [rdi + 0x134], xmm1
vmovss xmm0, dword [rdi + 0xf4]
vmovss xmm2, dword [rdi + 0xf0]
vmovss dword [rdi + 0xe0], xmm2
vmovss dword [rdi + 0xe4], xmm0
vmovss dword [rdi + 0xe8], xmm2
vmovss dword [rdi + 0xec], xmm0
vmovss dword [rdi + 0xf8], xmm2
vmovss dword [rdi + 0xfc], xmm0
vmovss dword [rdi + 0x100], xmm2
vmovss dword [rdi + 0x104], xmm0
mov qword [rdi + 0x110], r12
mov qword [rdi + 0x108], r12
mov qword [rdi + 0x118], r12
mov word [rdi + 0x120], r12w
mov dword [rdi + 0x138], r12d
movzx eax, word [rdi + 0x13e]
mov word [rdi + 0x13c], ax
mov word [rdi + 0x13e], r12w
mov byte [rdi + 0x144], r12b
vmovss xmm0, dword [rdi + 0x70]
vcomiss xmm0, xmm13
seta al
mov byte [rdi + 0x145], al
mov byte [rdi + 0x146], r12b
vmovss xmm0, dword [r14 + 0x382c]
cmp byte [rsp + 0x31], r12b
je 0x18002f899
xor eax, eax
mov qword [rbx + 0x12], rax
vcvttss2si eax, xmm0
mov word [rbx + 8], ax
mov rcx, rbx
vzeroupper
call fcn.18005da80
xor eax, eax
mov qword [rbx + 0x12], rax
mov eax, dword [rbx + 4]
mov dword [rbx], eax
mov dword [rbx + 4], r12d
mov qword [rdi + 0x16c], r12
mov ecx, dword [rdi + 0x17c]
test ecx, ecx
jns 0x18002f8e9
mov eax, ecx
cdq
sub eax, edx
mov edx, r12d
sar eax, 1
add eax, ecx
lea rcx, [rdi + 0x178]
test eax, eax
cmovg edx, eax
call fcn.180039420
mov dword [rdi + 0x178], r12d
lea rax, [rdi + 0x258]
mov qword [rdi + 0x188], rax
mov eax, 1
mov qword [rdi + 0x190], r12
mov r12, qword [rsp + 0x78]
mov dword [rdi + 0x19c], eax
test r12, r12
je 0x18002f922
mov eax, dword [r12 + 0x19c]
mov dword [rdi + 0x1a0], eax
mov eax, dword [rdi + 0x250]
mov dword [rdi + 0x1a8], eax
mov dword [rdi + 0x1ac], 0xbf800000
mov ecx, dword [rdi + 0x1b4]
test ecx, ecx
jns 0x18002f966
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
mov edx, ecx
test eax, eax
lea rcx, [rdi + 0x1b0]
cmovg edx, eax
call fcn.1800214c0
xor r8d, r8d
mov dword [rdi + 0x1b0], r8d
mov ecx, dword [rdi + 0x1c4]
test ecx, ecx
jns 0x18002f99a
mov eax, ecx
cdq
sub eax, edx
mov edx, r8d
sar eax, 1
add eax, ecx
lea rcx, [rdi + 0x1c0]
test eax, eax
cmovg edx, eax
call fcn.1800214c0
xor r8d, r8d
mov dword [rdi + 0x1c0], r8d
movzx eax, byte [rdi + 0xb0]
test al, al
jle 0x18002f9b4
dec al
mov byte [rdi + 0xb0], al
movzx eax, byte [rdi + 0xb1]
test al, al
jle 0x18002f9c7
dec al
mov byte [rdi + 0xb1], al
cmp byte [rsp + 0x3c], 0
je 0x18002f9e0
mov rcx, rdi
call fcn.180030060
xor edx, edx
mov rcx, rdi
call fcn.1800348f0
vmovss xmm6, dword [rbp - 0x50]
vmovss xmm7, dword [rsp + 0x50]
vmovss xmm8, dword [rsp + 0x64]
test sil, 1
jne 0x18002fa25
vaddss xmm0, xmm15, dword [rdi + 0x54]
vsubss xmm1, xmm7, dword [rdi + 0x54]
mov r8, qword [rbp - 0x48]
lea rdx, [rbp - 0x70]
mov rcx, rdi
vmovss dword [rbp - 0x70], xmm0
vmovss dword [rbp - 0x68], xmm1
vmovss dword [rbp - 0x6c], xmm6
vmovss dword [rbp - 0x64], xmm8
call fcn.18002d5f0
mov rdx, qword [0x180186220]
xor eax, eax
mov dword [rdi + 0x240], eax
vmovss xmm1, dword [rdx + 0x3844]
vmovss xmm0, dword [rdx + 0x3848]
vsubss xmm2, xmm15, xmm1
vmovaps xmm15, xmmword [rsp + 0x160]
vaddss xmm4, xmm1, xmm7
vmovss xmm1, dword [rdx + 0xdfc]
vcomiss xmm1, xmm2
vmovaps xmm7, xmmword [rsp + 0x1e0]
vaddss xmm5, xmm0, xmm8
vmovaps xmm8, xmmword [rsp + 0x1d0]
vsubss xmm3, xmm6, xmm0
vmovaps xmm6, xmmword [rsp + 0x1f0]
jb 0x18002faa5
vmovss xmm0, dword [rdx + 0xe00]
vcomiss xmm0, xmm3
jb 0x18002faa5
vcomiss xmm4, xmm1
jbe 0x18002faa5
vcomiss xmm5, xmm0
lea r8d, [rax + 1]
ja 0x18002faa8
mov r8d, eax
mov eax, dword [rdi + 0x5c]
mov ecx, dword [r14 + 0x3f3c]
vmovups xmm0, xmmword [rbp - 0x60]
mov dword [rdx + 0x3f54], eax
mov eax, dword [rsp + 0x44]
vmovups xmmword [rdx + 0x3f60], xmm0
mov dword [rdx + 0x3f58], ecx
mov dword [rdx + 0x3f5c], r8d
jmp 0x18002fb6d
mov rcx, qword [0x180186220]
mov qword [rcx + 0x3e90], rdi
movsxd rax, dword [rdi + 0x198]
cmp eax, 0xffffffff
je 0x18002fb05
imul rdx, rax, 0x218
add rdx, qword [rcx + 0x4320]
jmp 0x18002fb08
mov rdx, rsi
mov qword [rcx + 0x42f8], rdx
mov rax, qword [rdi + 0x350]
vmovss xmm0, dword [rdi + 0x278]
vmulss xmm1, xmm0, dword [rcx + 0x3c04]
test rax, rax
je 0x18002fb33
vmulss xmm1, xmm1, dword [rax + 0x278]
mov esi, dword [rsp + 0x38]
lea r13, [rdi + 0x1f8]
mov r12, qword [rsp + 0x78]
lea r15, [rdi + 0x1f0]
vmovss dword [rcx + 0x3c18], xmm1
vmovss dword [rcx + 0x3c00], xmm1
mov eax, ebx
mov ecx, ebx
and eax, 0x1000000
and ecx, 0x40
mov dword [rsp + 0x44], eax
mov dword [rbp - 0x78], ecx
test eax, eax
je 0x18002fb7b
mov ebx, dword [r12 + 0x140]
jmp 0x18002fbc3
movsxd rcx, dword [rdi + 0xd0]
xor edx, edx
mov rax, qword [rdi + 0xd8]
mov r8d, dword [rax + rcx*4 - 4]
lea rcx, str.FOCUSSCOPE
vzeroupper
call fcn.180022e50
mov rcx, qword [0x180186220]
mov ebx, eax
cmp dword [rcx + 0x3ec4], eax
jne 0x18002fbc3
lea r8, str.FOCUSSCOPE
mov edx, 0xb
mov ecx, eax
call fcn.180038b10
mov dword [rdi + 0x140], ebx
mov r8b, 1
mov rdx, r13
mov rcx, r15
vzeroupper
call fcn.180029b40
mov eax, dword [rsp + 0x48]
xor ecx, ecx
mov r15, qword [rsp + 0x200]
mov r13, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x248]
mov byte [rdi + 0x98], 0
inc word [rdi + 0xa2]
mov dword [r14 + 0x3f90], ecx
cmp eax, dword [rsp + 0x60]
je 0x18002fd73
cmp dword [rsp + 0x44], ecx
je 0x18002fcdf
cmp dword [rbp - 0x78], ecx
jne 0x18002fca0
cmp byte [rdi + 0xb0], cl
jg 0x18002fca0
cmp byte [rdi + 0xb1], cl
jg 0x18002fca0
bt esi, 0x17
jae 0x18002fc65
cmp byte [r14 + 0x40dc], cl
je 0x18002fc65
mov rcx, qword [r14 + 0x4098]
test rcx, rcx
je 0x18002fc65
mov rax, qword [rdi + 0x378]
cmp qword [rcx + 0x378], rax
jne 0x18002fc65
mov al, 1
jmp 0x18002fc67
xor al, al
cmp byte [r14 + 0x53d4], 0
jne 0x18002fca0
test al, al
jne 0x18002fca0
vmovss xmm0, dword [rdi + 0x1d0]
vcomiss xmm0, dword [rdi + 0x1d8]
jae 0x18002fc99
vmovss xmm0, dword [rdi + 0x1d4]
vcomiss xmm0, dword [rdi + 0x1dc]
jb 0x18002fca0
mov byte [rdi + 0xb8], 1
test r12, r12
je 0x18002fcdf
cmp byte [r12 + 0x99], 0
jne 0x18002fcbb
cmp byte [r12 + 0xb8], 0
jle 0x18002fcc2
mov byte [rdi + 0xb8], 1
cmp byte [r12 + 0x99], 0
jne 0x18002fcd8
cmp byte [r12 + 0xb9], 0
jle 0x18002fcdf
mov byte [rdi + 0xb9], 1
vcomiss xmm13, dword [r14 + 0x37e0]
jb 0x18002fcf1
mov byte [rdi + 0xb8], 1
cmp byte [rdi + 0xb8], 0
jg 0x18002fd11
cmp byte [rdi + 0xb9], 0
jg 0x18002fd11
xor cl, cl
cmp byte [rdi + 0xba], cl
jg 0x18002fd13
xor al, al
jmp 0x18002fd15
mov cl, 1
mov al, 1
mov byte [rdi + 0x9d], al
movzx eax, byte [rdi + 0xbb]
test al, al
jle 0x18002fd35
dec al
mov byte [rdi + 0xbb], al
or dword [rdi + 0xc], 0xc0200
xor al, al
cmp byte [rdi + 0x99], al
jne 0x18002fd4b
cmp byte [rdi + 0x96], al
je 0x18002fd4b
test cl, cl
je 0x18002fd6d
cmp byte [rdi + 0xb0], al
jg 0x18002fd6d
cmp byte [rdi + 0xb1], al
jg 0x18002fd6d
cmp byte [rdi + 0xb9], 0
mov edx, 1
movzx eax, al
cmovle eax, edx
mov byte [rdi + 0x9b], al
cmp byte [rdi + 0x9b], 0
mov rsi, qword [rsp + 0x210]
sete al
mov rcx, qword [rbp + 0x50]
xor rcx, rsp
call fcn.18006e830
vmovaps xmm13, xmmword [rsp + 0x180]
add rsp, 0x218
pop r14
pop r12
pop rdi
pop rbp
ret