Function at 0x140077280
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x318
vmovaps xmmword [rsp + 0x300], xmm15
vmovaps xmmword [rsp + 0x2f0], xmm14
vmovaps xmmword [rsp + 0x2e0], xmm13
vmovaps xmmword [rsp + 0x2d0], xmm12
vmovaps xmmword [rsp + 0x2c0], xmm11
vmovaps xmmword [rsp + 0x2b0], xmm10
vmovaps xmmword [rsp + 0x2a0], xmm9
vmovaps xmmword [rsp + 0x290], xmm8
vmovaps xmmword [rsp + 0x280], xmm7
vmovaps xmmword [rsp + 0x270], xmm6
mov r15, r8
mov rsi, rdx
mov rbx, rcx
mov cl, 1
nop dword [rax + rax]
movzx eax, byte [rsi]
test al, al
jne 0x140077300
xor eax, eax
lock cmpxchg byte [rsi], cl
je 0x140077313
pause
jmp 0x140077300
movzx eax, word [rsi + 2]
test eax, 0x200
je 0x140077326
mov rcx, rsi
call fcn.14006cf60
mov rdx, qword [rsi + 0x44a0]
movsxd rcx, dword [rsi + 0x44ac]
movzx eax, byte [0x140178b9e]
test al, 2
sete byte [rsp + 0x5f]
vmovsd xmm7, qword [rbx]
vmovss xmm0, dword [rbx + 8]
vmovss xmm12, dword [rbx + 0xc]
vsubss xmm0, xmm0, dword [rsi + 0x20]
vmovaps xmmword [rsp + 0x130], xmm0
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0xb8], rcx
lea r14, [rsp + 0xb0]
mov rcx, r14
call fcn.14006c440
vcvtsi2ss xmm0, xmm1, dword [r15]
vmulss xmm9, xmm0, dword [0x1400aa074]
mov r12d, eax
movzx eax, byte [0x140178b9e]
vmovshdup xmm14, xmm7
test al, 1
mov qword [rsp + 0x68], r15
je 0x1400774ad
movzx eax, word [rsi + 2]
test al, 0x40
jne 0x1400774ad
lea rdx, [0x1400af071]
lea rcx, [rsp + 0x40]
mov r8d, r12d
call fcn.140002a90
movzx eax, byte [0x140178b9c]
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x1400774c1
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xb8], rdx
add rcx, rdx
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xc8], 0
movzx eax, al
vcvtsi2ss xmm0, xmm1, eax
vmovss dword [rsp + 0xd0], xmm0
vxorps xmm0, xmm0, xmm0
vmovlps qword [rsp + 0xd4], xmm0
mov qword [rsp + 0xe0], r15
lea r9, [rsp + 0xe8]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rsp + 0xe8], ymm0
mov qword [rsp + 0x108], 0
mov rcx, r15
xor edx, edx
xor r8d, r8d
vzeroupper
call fcn.14000ce50
mov qword [rsp + 0xf8], rax
lea rcx, [rsp + 0xb0]
call fcn.14000d250
vxorps xmm6, xmm6, xmm6
test rax, rax
je 0x1400774a6
lea r15, [rsp + 0xb0]
vaddss xmm6, xmm6, dword [rsp + 0xd8]
mov rcx, r15
call fcn.14000d250
test rax, rax
jne 0x140077490
mov r15, qword [rsp + 0x68]
jmp 0x1400774c5
mov dword [rsp + 0xa4], 0
vmovaps xmm15, xmm7
jmp 0x14007755d
vxorps xmm6, xmm6, xmm6
vaddss xmm0, xmm9, xmm6
vaddss xmm0, xmm7, xmm0
vroundss xmm15, xmm0, xmm0, 0xa
vsubss xmm0, xmm12, xmm14
vsubss xmm1, xmm15, xmm7
vmovupd xmm2, xmmword [0x140178a14]
vmovapd xmmword [rsp + 0x1b0], xmm2
vxorpd xmm2, xmm2, xmm2
vpbroadcastq xmm3, qword [0x1400a9ea8]
vpmovzxdq xmm4, qword [0x1400c7340]
vpor xmm4, xmm4, xmm3
vsubpd xmm3, xmm4, xmm3
vcvtpd2ps xmm3, xmm3
vunpcklpd xmm2, xmm2, xmm3
vmovupd xmmword [rsp + 0xb0], xmm2
vcvttps2dq xmm0, xmm0
vcvtdq2ps xmm3, xmm0
vcvttps2dq xmm0, xmm1
vcvtdq2ps xmm2, xmm0
vcvttps2dq xmm0, xmm14
vcvtdq2ps xmm1, xmm0
vcvttps2dq xmm0, xmm7
vcvtdq2ps xmm0, xmm0
mov qword [rsp + 0x28], r14
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x20], rax
call fcn.14000ee60
mov al, 1
mov dword [rsp + 0xa4], eax
vsubss xmm6, xmm12, xmm14
vdivss xmm0, xmm6, dword [r15 + 8]
vroundss xmm10, xmm0, xmm0, 0xa
vcvttss2si eax, xmm10
mov rcx, qword [0x140178920]
mov dword [rcx + 0x18], eax
lea rcx, [rsp + 0xb0]
call qword [sym.imp.USER32.dll_GetCursorPos]
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rsp + 0x170], xmm0
test eax, eax
je 0x1400775cb
mov rcx, qword [0x1400f2098]
lea rdx, [rsp + 0xb0]
call qword [sym.imp.USER32.dll_ScreenToClient]
test eax, eax
je 0x1400775cb
vmovsd xmm0, qword [rsp + 0xb0]
vcvtdq2ps xmm0, xmm0
vmovaps xmmword [rsp + 0x170], xmm0
vmovaps xmm0, xmmword [rsp + 0x130]
vsubss xmm11, xmm0, xmm15
vmovaps xmm0, xmmword [rsp + 0x170]
vucomiss xmm0, xmm15
vmovshdup xmm8, xmm0
jb 0x140077618
vaddss xmm0, xmm15, xmm11
vucomiss xmm0, dword [rsp + 0x170]
jb 0x140077618
vaddss xmm0, xmm14, xmm6
vucomiss xmm0, xmm8
jb 0x140077618
vucomiss xmm8, xmm14
jb 0x140077618
mov cl, 7
xor edx, edx
call fcn.14000fb00
movzx eax, word [rsi + 2]
test al, al
vmovaps xmmword [rsp + 0x210], xmm8
vmovaps xmmword [rsp + 0x250], xmm7
js 0x140077657
mov eax, dword [0x140178a2c]
mov dword [rsp + 0x160], eax
mov rax, qword [0x140178a24]
mov qword [rsp + 0x158], rax
lea rax, [0x140178a30]
jmp 0x14007767a
mov eax, dword [0x140178968]
mov dword [rsp + 0x160], eax
mov rax, qword [0x140178960]
mov qword [rsp + 0x158], rax
lea rax, [0x14017896c]
vmovss xmm0, dword [rax]
vmovss dword [rsp + 0x128], xmm0
mov rax, qword [0x140178920]
mov qword [rsp + 0x118], rax
mov eax, r12d
vcvtsi2ss xmm0, xmm5, rax
vmovss xmm1, dword [r15 + 8]
vcvtsi2ss xmm2, xmm5, dword [r15]
vsubss xmm2, xmm1, xmm2
vmulss xmm0, xmm0, xmm1
vsubss xmm8, xmm0, xmm2
movzx eax, word [rsi + 2]
test al, 0x40
jne 0x1400776c7
vsubss xmm0, xmm6, dword [r15 + 8]
vaddss xmm8, xmm8, xmm0
lea eax, [rsi + 0x25eb]
movabs r14, 0x2f63727300000000
or r14, rax
mov rdx, qword [rsi + 0x4570]
mov rcx, rsi
call fcn.14006c770
mov eax, eax
dec rax
vcvtsi2ss xmm0, xmm5, rax
vmulss xmm0, xmm0, dword [r15 + 8]
vaddss xmm0, xmm14, xmm0
vsubss xmm0, xmm0, dword [rsi + 0x1c]
vmovss dword [rsp + 0x84], xmm0
movzx eax, word [rsi + 2]
test al, 8
jne 0x140077780
movzx eax, word [rsi + 2]
test al, 4
je 0x14007792e
vcvtsi2ss xmm7, xmm5, dword [r15]
vmovss xmm13, dword [rbx + 4]
vmovss xmm6, dword [rbx + 0xc]
mov rdi, qword [0x1400e4410]
movsxd rax, dword [0x1400e441c]
lea rcx, [rax + rax*2]
shl rcx, 4
add rcx, rdi
cmp rdi, rcx
jae 0x14007787e
mov r15, rdi
jmp 0x14007776d
add r15, 0x30
cmp r15, rcx
jae 0x14007787e
cmp qword [r15], r14
jne 0x140077760
cmp byte [r15 + 8], 0
jne 0x140077760
xor eax, eax
jmp 0x1400778d1
vcvtsi2ss xmm6, xmm5, dword [r15]
vmovss xmm7, dword [rbx + 4]
vmovss xmm13, dword [rbx + 0xc]
mov rdi, qword [0x1400e4410]
movsxd rax, dword [0x1400e441c]
lea rcx, [rax + rax*2]
shl rcx, 4
add rcx, rdi
cmp rdi, rcx
jae 0x1400777d9
mov r15, rdi
jmp 0x1400777c9
add r15, 0x30
cmp r15, rcx
jae 0x1400777d9
cmp qword [r15], r14
jne 0x1400777c0
cmp byte [r15 + 8], 0
jne 0x1400777c0
xor eax, eax
jmp 0x14007782c
cmp eax, dword [0x1400e4420]
jne 0x1400777fa
lea rcx, [0x1400e4410]
call fcn.140001620
mov eax, dword [0x1400e441c]
mov rdi, qword [0x1400e4410]
movsxd r8, dword [0x1400e4418]
cdqe
mov r12, r8
imul r12, rax
lea r15, [rdi + r12]
inc eax
mov dword [0x1400e441c], eax
mov rcx, r15
xor edx, edx
call fcn.1400924f0
mov qword [rdi + r12], r14
mov byte [rdi + r12 + 8], 0
mov al, 1
mov byte [r15 + 9], al
vsubss xmm0, xmm13, xmm7
vsubss xmm1, xmm8, xmm0
vmovss xmm2, dword [0x1400a8738]
vmulss xmm0, xmm0, xmm2
vaddss xmm0, xmm7, xmm0
vmulss xmm2, xmm6, xmm2
vsubss xmm0, xmm0, xmm2
vmovss xmm2, dword [rsp + 0x84]
vsubss xmm0, xmm2, xmm0
vaddss xmm0, xmm0, dword [r15 + 0xc]
vxorps xmm2, xmm2, xmm2
vmaxss xmm0, xmm0, xmm2
vminss xmm0, xmm1, xmm0
vmovss dword [r15 + 0xc], xmm0
mov ax, 0xfff7
jmp 0x14007791d
cmp eax, dword [0x1400e4420]
jne 0x14007789f
lea rcx, [0x1400e4410]
call fcn.140001620
mov eax, dword [0x1400e441c]
mov rdi, qword [0x1400e4410]
movsxd r8, dword [0x1400e4418]
cdqe
mov r12, r8
imul r12, rax
lea r15, [rdi + r12]
inc eax
mov dword [0x1400e441c], eax
mov rcx, r15
xor edx, edx
call fcn.1400924f0
mov qword [rdi + r12], r14
mov byte [rdi + r12 + 8], 0
mov al, 1
mov byte [r15 + 9], al
vsubss xmm0, xmm6, xmm13
mov ax, 0xfffb
vucomiss xmm7, xmm0
ja 0x14007791d
vmovss xmm0, dword [rsp + 0x84]
vucomiss xmm13, xmm0
jbe 0x140077903
vsubss xmm0, xmm13, xmm0
vmovss xmm1, dword [r15 + 0xc]
vsubss xmm0, xmm1, xmm0
jmp 0x140077917
vaddss xmm0, xmm0, xmm7
vucomiss xmm0, xmm6
jbe 0x14007791d
vsubss xmm0, xmm0, xmm6
vaddss xmm0, xmm0, dword [r15 + 0xc]
vmovss dword [r15 + 0xc], xmm0
mov r15, qword [rsp + 0x68]
or byte [0x1400e444c], 2
lock and word [rsi + 2], ax
movzx eax, word [rsi + 2]
test al, al
lea rax, [0x1401789d4]
lea rcx, [0x1401789dc]
lea rdx, [0x140178948]
cmovns rdx, rcx
lea rcx, [0x140178940]
vmovss xmm0, dword [rdx]
lea rdx, [0x1401789d8]
lea r8, [0x140178944]
cmovns r8, rdx
cmovns rcx, rax
vmovss xmm1, dword [r8]
vmovss xmm2, dword [rcx]
vmulss xmm2, xmm2, xmm2
vmulss xmm1, xmm1, xmm1
vmulss xmm1, xmm1, dword [0x1400a8740]
vmulss xmm2, xmm2, dword [0x1400a8744]
vaddss xmm1, xmm2, xmm1
vmulss xmm0, xmm0, xmm0
vmulss xmm0, xmm0, dword [0x1400a8748]
vaddss xmm0, xmm0, xmm1
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jb 0x1400779c5
vsqrtss xmm0, xmm0, xmm0
vucomiss xmm0, dword [0x1400a8738]
ja 0x1400779d4
vmovups xmm0, xmmword [0x1400a8bc0]
jmp 0x1400779dc
call fcn.140096978
vucomiss xmm0, dword [0x1400a8738]
jbe 0x1400779bb
vmovups xmm0, xmmword [0x1400a8bd0]
vmovaps xmmword [rsp + 0x260], xmm0
vmovss xmm0, dword [0x1400e4460]
vmulss xmm3, xmm0, dword [0x1401789d0]
vmovups xmm0, xmmword [rbx]
vmovaps xmmword [rsp + 0xb0], xmm0
vmovaps xmm0, xmmword [rsp + 0x260]
vmovaps xmmword [rsp + 0x1b0], xmm0
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], 1
lea rdx, [rsp + 0xb0]
mov rcx, r14
vmovaps xmm2, xmm8
call fcn.14000ff10
vmovss xmm0, dword [rax]
vmovss dword [rsi + 0x1c], xmm0
vmovss xmm1, dword [rax + 4]
vmovss dword [rsi + 0x20], xmm1
mov qword [rsi + 0x45d0], rax
vmovss xmm1, dword [rbx + 4]
vsubss xmm6, xmm1, xmm0
vsubss xmm0, xmm1, xmm6
vdivss xmm0, xmm0, dword [r15 + 8]
vroundss xmm0, xmm0, xmm0, 9
vcvttss2si rdi, xmm0
lea edx, [rdi + 1]
mov r14, qword [rsp + 0x60]
mov qword [rsp + 0xb0], r14
mov rbx, qword [rsp + 0x88]
mov qword [rsp + 0xb8], rbx
lea rcx, [rsp + 0xb0]
mov dword [rsp + 0xac], edx
call fcn.14006c620
mov r13, rax
mov eax, edi
vcvtsi2ss xmm7, xmm4, rax
vaddss xmm0, xmm10, xmm7
vmovss xmm1, dword [0x1400a8724]
vaddss xmm0, xmm0, xmm1
vaddss xmm0, xmm0, xmm1
vcvttss2si rdx, xmm0
mov qword [rsp + 0xb0], r14
mov qword [rsp + 0xb8], rbx
lea rcx, [rsp + 0xb0]
call fcn.14006c620
mov r14, rax
cmp r13, qword [rsi + 0x4548]
jne 0x140077afb
cmp r14, qword [rsi + 0x4550]
je 0x140077b02
lock or word [rsi + 2], 0x400
movzx eax, word [rsi + 2]
test eax, 0x400
mov r8, qword [rsp + 0x60]
je 0x140077d9e
mov dword [rsi + 0x4474], 0
mov dword [rsi + 0x44e4], 0
movzx eax, word [rsi + 2]
test al, al
js 0x140077d97
mov rcx, rsi
call fcn.14006bbc0
xor ebp, ebp
test rax, rax
je 0x140077b4b
movzx edi, word [rax + 0x68]
jmp 0x140077b4d
xor edi, edi
mov r8, qword [rsp + 0x60]
test r13, r13
jle 0x140077d19
lea rbx, [r8 + r13]
xor ebp, ebp
lea r15, [rsp + 0xb0]
xor r12d, r12d
xor eax, eax
jmp 0x140077b7b
inc ebp
cmp rax, r13
jge 0x140077d23
mov rcx, rsi
mov rdx, rax
mov r8, r15
call fcn.1400650d0
cmp rax, r13
jge 0x140077d1e
test rax, rax
js 0x140077d1e
movzx ecx, word [rsp + 0xbc]
test ecx, 0x800
mov r8, qword [rsp + 0x60]
jne 0x140077b70
test ecx, 0x1000
jne 0x140077be0
test ebp, ebp
jne 0x140077b72
test ecx, 0x400
jne 0x140077bef
test di, di
je 0x140077c18
mov rdx, qword [rsp + 0xb0]
xor ebp, ebp
test rdx, rdx
jle 0x140077c1f
movzx ecx, byte [r8 + rdx - 1]
jmp 0x140077c21
cmp ebp, 2
mov ecx, 1
cmovl ebp, ecx
dec ebp
jmp 0x140077b72
add rax, r8
nop word cs:[rax + rax]
movzx ecx, byte [rax]
cmp ecx, 0xa
je 0x140077c15
cmp ecx, 0xd
je 0x140077c15
inc rax
cmp rax, rbx
jb 0x140077c00
sub rax, r8
xor ebp, ebp
jmp 0x140077b72
xor ecx, ecx
movzx edx, byte [r8 + rdx]
cmp edx, 0x60
je 0x140077c7d
cmp edx, 0x27
je 0x140077cbc
cmp edx, 0x22
jne 0x140077b72
test dil, dil
jns 0x140077b72
cmp cl, 0x27
je 0x140077b72
add rax, r8
xor ecx, ecx
jmp 0x140077c65
xor cl, 1
inc rax
cmp rax, rbx
jae 0x140077cfb
movzx edx, byte [rax]
cmp dl, 0x5c
je 0x140077c56
test cl, cl
mov ecx, 0
jne 0x140077c59
cmp dl, 0x22
jne 0x140077c59
jmp 0x140077cf0
test edi, 0x200
je 0x140077b72
cmp cl, 0x27
je 0x140077b72
add rax, r8
xor ecx, ecx
jmp 0x140077ca4
xor cl, 1
inc rax
cmp rax, rbx
jae 0x140077d05
movzx edx, byte [rax]
cmp dl, 0x5c
je 0x140077c99
test cl, cl
mov ecx, 0
jne 0x140077c9c
cmp dl, 0x60
jne 0x140077c9c
jmp 0x140077cf0
test edi, 0x100
je 0x140077b72
add rax, r8
xor ecx, ecx
jmp 0x140077cda
xor cl, 1
inc rax
cmp rax, rbx
jae 0x140077d0f
movzx edx, byte [rax]
cmp dl, 0x5c
je 0x140077ccf
test cl, cl
mov ecx, 0
jne 0x140077cd2
cmp dl, 0x27
jne 0x140077cd2
inc rax
xor r12d, r12d
jmp 0x140077c15
mov r12w, 0x80
jmp 0x140077c15
mov r12w, 0x200
jmp 0x140077c15
mov r12w, 0x100
jmp 0x140077c15
xor r12d, r12d
jmp 0x140077d23
mov r8, qword [rsp + 0x60]
xor eax, eax
test ebp, ebp
cmovg eax, ebp
mov qword [rsi + 0x4548], r13
mov qword [rsi + 0x4550], r14
mov dword [rsi + 0x4558], eax
mov word [rsi + 0x455c], r12w
mov rcx, qword [0x140178a40]
test rcx, rcx
mov r15, qword [rsp + 0x68]
je 0x140077d97
cmp dword [rcx + 8], 1
jne 0x140077d97
mov dl, 1
nop
movzx eax, byte [0x140178ba1]
test al, al
jne 0x140077d60
xor eax, eax
lock cmpxchg byte [0x140178ba1], dl
je 0x140077d7b
pause
jmp 0x140077d60
mov eax, dword [rcx + 0x58]
add rax, rcx
mov qword [0x1400e4b38], rsi
call rax
mov r8, qword [rsp + 0x60]
xor eax, eax
xchg byte [0x140178ba1], al
lock and word [rsi + 2], 0xfbff
vmulss xmm0, xmm7, dword [r15 + 8]
mov rax, qword [rsi + 0x44d8]
mov qword [rsp + 0x1a8], rax
movsxd rax, dword [rsi + 0x44e0]
mov qword [rsp + 0x1a0], rax
mov eax, dword [rsi + 0x44e4]
mov dword [rsp + 0x12c], eax
movzx eax, word [rsi + 2]
test al, al
js 0x140077de1
vmovups xmm1, xmmword [0x1401789e4]
jmp 0x140077de9
vmovaps xmm1, xmmword [0x140178960]
vmovaps xmmword [rsp + 0x180], xmm1
mov rax, qword [rsp + 0x88]
lea rbx, [r8 + rax]
mov eax, 0xffffffff
mov qword [rsp + 0x140], rax
cmp dword [rsp + 0x12c], 0
mov qword [rsp + 0x148], rbx
je 0x140077fc2
movsxd rax, dword [rsi + 0x44e4]
test rax, rax
je 0x140077f79
mov rcx, qword [rsi + 0x44d8]
xor edx, edx
mov r9, rcx
jmp 0x140077e98
mov r11, r8
shr r11, 1
lea rdi, [r11 + rdx]
dec rdi
add r11, rdx
movsxd rbx, dword [rsi + 0x44e0]
imul rbx, rdi
mov rdi, r13
sub rdi, qword [rcx + rbx]
mov r15, rdi
neg r15
cmovs r15, rdi
mov rdi, r13
sub rdi, qword [rcx + rbx + 0x10]
mov rbx, rdi
neg rbx
cmovs rbx, rdi
cmp r15, rbx
mov r15, qword [rsp + 0x68]
cmovb rax, r11
cmovae rdx, r11
cmp r8, 7
jle 0x140077f3f
mov r8, rax
sub r8, rdx
cmp r8, 7
jg 0x140077e40
cmp rax, rdx
jle 0x140077f20
mov r10, rax
shl r10, 4
add r10, rcx
mov r11, rdx
shl r11, 4
add r11, rcx
mov rdi, qword [r9]
jmp 0x140077edf
add r11, 0x10
mov rdi, rbx
mov r9, r15
cmp r11, r10
jae 0x140077f23
mov rbx, qword [r11]
mov r15, rbx
sub r15, r13
mov r12, r15
neg r12
cmovs r12, r15
mov r15, rdi
sub r15, r13
mov rbp, r15
neg rbp
cmovs rbp, r15
mov r15, r11
cmp r12, rbp
jb 0x140077ed0
mov rbx, rdi
mov r15, r9
jmp 0x140077ed0
mov r15, r9
mov r10, r15
sub r10, rcx
sar r10, 4
mov r9, r15
mov r15, qword [rsp + 0x68]
cmp r8, 7
jg 0x140077e98
mov rbx, qword [rsp + 0x148]
test r10, r10
mov r8, qword [rsp + 0x60]
js 0x140077fc2
mov rcx, r10
imul rcx, qword [rsp + 0x1a0]
mov r11, qword [rsp + 0x1a8]
mov rax, qword [r11 + rcx]
cmp rax, r13
jle 0x140077f83
add rax, r8
dec r10d
mov rbx, rax
jmp 0x140077fba
mov rbx, qword [rsp + 0x148]
jmp 0x140077fc2
movzx edx, word [r11 + rcx + 0xc]
mov r8, qword [rsi + 0x4468]
movsxd r9, dword [rsi + 0x4470]
imul r9, rdx
vmovups xmm1, xmmword [r8 + r9]
mov r8, qword [rsp + 0x60]
vmovaps xmmword [rsp + 0x180], xmm1
add rax, r8
mov ebx, dword [r11 + rcx + 8]
add rbx, rax
mov qword [rsp + 0x140], r10
movzx eax, word [rsi + 2]
test al, 2
jne 0x140077fe1
xor eax, eax
mov qword [rsp + 0x90], rax
xor edx, edx
test byte [0x1400e444c], 1
je 0x140078006
jmp 0x140078024
mov rax, qword [rsi + 0x4580]
mov rcx, qword [rsi + 0x4588]
mov rdx, qword [rax]
mov rax, qword [rcx]
mov qword [rsp + 0x90], rax
test byte [0x1400e444c], 1
jne 0x140078024
movzx eax, word [rsi + 2]
test al, 0x10
je 0x140078024
lock and word [rsi + 2], 0xffef
cmp rdx, qword [rsp + 0x90]
jne 0x140078024
lock and word [rsi + 2], 0xfffd
mov qword [rsp + 0x70], rdx
vaddss xmm8, xmm0, xmm6
cmp byte [rsp + 0xa4], 0
je 0x1400780ee
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], 0
lea rdx, [0x1400aac98]
lea rcx, [rsp + 0x1b0]
mov r8d, dword [rsp + 0xac]
call fcn.140002640
vsubss xmm1, xmm15, xmm9
vmovups xmm0, xmmword [rsp + 0x1b0]
vmovaps xmmword [rsp + 0x40], xmm0
vmovups xmm0, xmmword [0x140178a04]
vmovaps xmmword [rsp + 0x220], xmm0
vmovaps xmm0, xmmword [rsp + 0x250]
vmovlps qword [rsp + 0x190], xmm0
vmovss dword [rsp + 0x198], xmm15
vmovss dword [rsp + 0x19c], xmm12
lea rax, [rsp + 0x190]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x20], r15
mov byte [rsp + 0x28], 8
lea rcx, [rsp + 0x40]
lea r9, [rsp + 0x220]
vmovaps xmm2, xmm8
call fcn.14000f260
mov r8, qword [rsp + 0x60]
lea r12, [r8 + r13]
movzx eax, word [rsi + 2]
mov dword [rsp + 0xa8], eax
mov rax, qword [rsi + 0x4570]
vmovaps xmm10, xmm15
cmp rax, r13
jle 0x140078299
mov rcx, r12
cmp r13, qword [rsp + 0x88]
jge 0x14007814a
mov rcx, r12
nop word cs:[rax + rax]
movzx edx, byte [rcx]
cmp edx, 0xa
je 0x14007814a
cmp edx, 0xd
je 0x14007814a
inc rcx
cmp rcx, qword [rsp + 0x148]
jb 0x140078130
sub rcx, r8
vmovaps xmm10, xmm15
cmp rax, rcx
jg 0x140078299
movzx ecx, byte [0x140178b9c]
vxorps xmm0, xmm0, xmm0
cmp rax, r13
je 0x140078278
mov qword [rsp + 0xb0], r12
mov qword [rsp + 0xb8], r12
add rax, r8
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], 0
movzx eax, cl
vcvtsi2ss xmm0, xmm4, eax
vmovss dword [rsp + 0xd0], xmm0
vxorps xmm0, xmm0, xmm0
vmovlps qword [rsp + 0xd4], xmm0
mov qword [rsp + 0xe0], r15
lea r9, [rsp + 0xe8]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rsp + 0xe8], ymm0
mov qword [rsp + 0x108], 0
mov rcx, r15
xor edx, edx
xor r8d, r8d
vzeroupper
call fcn.14000ce50
mov qword [rsp + 0xf8], rax
lea rcx, [rsp + 0xb0]
call fcn.14000d250
test rax, rax
je 0x14007823c
vxorps xmm7, xmm7, xmm7
lea r15, [rsp + 0xb0]
vxorps xmm6, xmm6, xmm6
nop word cs:[rax + rax]
vaddss xmm6, xmm7, xmm6
vmovss xmm7, dword [rsp + 0xd8]
mov rcx, r15
call fcn.14000d250
test rax, rax
jne 0x140078220
jmp 0x140078240
vxorps xmm6, xmm6, xmm6
mov rax, qword [rsp + 0x108]
vmovss xmm0, dword [rax + 0x18]
vcmpltss xmm1, xmm0, dword [0x1400a9ed4]
vmovss xmm2, dword [rsp + 0xd8]
vblendvps xmm0, xmm0, xmm2, xmm1
vaddss xmm0, xmm0, dword [rax + 0x10]
vaddss xmm0, xmm6, xmm0
mov r15, qword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
vaddss xmm1, xmm11, dword [0x1400aa078]
vmulss xmm2, xmm11, dword [0x1400a9ea0]
vaddss xmm2, xmm0, xmm2
vcmpnless xmm0, xmm1, xmm0
vandnps xmm0, xmm0, xmm2
vsubss xmm10, xmm15, xmm0
lea rax, [rsi + 0x4570]
mov qword [rsp + 0x78], rax
movzx eax, byte [0x140178b9c]
mov qword [rsp + 0x1b0], r12
mov qword [rsp + 0x1b8], r12
add r14, r8
mov qword [rsp + 0x1c0], r14
mov qword [rsp + 0x1c8], 0
movzx eax, al
vcvtsi2ss xmm0, xmm4, eax
vmovss dword [rsp + 0x1d0], xmm0
vxorps xmm0, xmm0, xmm0
vmovlps qword [rsp + 0x1d4], xmm0
mov qword [rsp + 0x1e0], r15
lea r9, [rsp + 0x1e8]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rsp + 0x1e8], ymm0
mov qword [rsp + 0x208], 0
mov rcx, r15
xor edx, edx
xor r8d, r8d
vzeroupper
call fcn.14000ce50
mov qword [rsp + 0x1f8], rax
lea rcx, [rsp + 0x1b0]
call fcn.14000d250
test rax, rax
je 0x1400792d0
lea rax, [rsi + 0x4578]
mov qword [rsp + 0x98], rax
vaddss xmm0, xmm11, dword [0x1400aa078]
vmovss dword [rsp + 0x168], xmm0
vbroadcastss xmm0, dword [0x1400a8730]
vxorps xmm1, xmm11, xmm0
vsubss xmm0, xmm15, xmm9
vmovss dword [rsp + 0x16c], xmm0
vxorps xmm0, xmm0, xmm0
vmulss xmm1, xmm1, dword [0x1400a8738]
vmovss dword [rsp + 0x164], xmm1
vmovaps xmm9, xmm15
xor edi, edi
xor r12d, r12d
vmovaps xmm7, xmm15
jmp 0x14007849f
vmovss xmm3, dword [r15 + 8]
vsubss xmm2, xmm11, xmm15
vmovups xmm0, xmmword [0x1401789f4]
vmovaps xmmword [rsp + 0xb0], xmm0
vmovss dword [rsp + 0x40], xmm15
vmovss dword [rsp + 0x44], xmm14
vmovaps xmm0, xmmword [rsp + 0x130]
vmovss dword [rsp + 0x48], xmm0
vmovss dword [rsp + 0x4c], xmm12
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
vmovaps xmm0, xmm15
vmovaps xmm1, xmm8
call fcn.14000ee60
mov rax, qword [rsp + 0x1f0]
vcvttss2si r8d, dword [rax + 0x10]
vcvttss2si edx, xmm8
vcvttss2si ecx, xmm11
vmovaps xmm0, xmmword [rsp + 0x180]
vmovaps xmmword [rsp + 0xb0], xmm0
vmovss dword [rsp + 0x40], xmm15
vmovss dword [rsp + 0x44], xmm14
vmovaps xmm0, xmmword [rsp + 0x130]
vmovss dword [rsp + 0x48], xmm0
vmovss dword [rsp + 0x4c], xmm12
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0xb0]
call fcn.14000f040
vaddss xmm10, xmm11, dword [rsp + 0x1d8]
mov r12b, 1
movsx edi, bpl
lea rcx, [rsp + 0x1b0]
call fcn.14000d250
vmovaps xmm0, xmm11
vmovaps xmm7, xmm6
test rax, rax
je 0x1400792d9
mov rcx, qword [rsp + 0x1b0]
cmp rcx, rbx
mov r10, qword [rsp + 0x78]
jne 0x140078548
mov rax, qword [rsp + 0x140]
inc eax
cmp eax, dword [rsp + 0x12c]
jge 0x140078537
movsxd r8, eax
imul r8, qword [rsp + 0x1a0]
mov r14, qword [rsp + 0x1a8]
mov rdx, qword [r14 + r8]
mov r9, qword [rsp + 0x60]
sub rbx, r9
cmp rdx, rbx
jne 0x14007893c
movzx r9d, word [r14 + r8 + 0xc]
mov r10, qword [rsi + 0x4468]
movsxd r11, dword [rsi + 0x4470]
imul r11, r9
mov r9, qword [rsp + 0x60]
vmovups xmm1, xmmword [r10 + r11]
mov r10, qword [rsp + 0x78]
vmovaps xmmword [rsp + 0x180], xmm1
add rdx, r9
mov ebx, dword [r14 + r8 + 8]
add rbx, rdx
mov qword [rsp + 0x140], rax
jmp 0x14007854d
vmovups xmm1, xmmword [0x1401789e4]
vmovaps xmmword [rsp + 0x180], xmm1
mov r9, qword [rsp + 0x60]
mov r14, rcx
sub r14, r9
mov rax, qword [r10]
vmovaps xmm13, xmm10
cmp r14, rax
je 0x140078565
vmovaps xmm13, xmm9
movzx ebp, byte [rcx]
cmp ebp, 0xd
je 0x140078572
cmp ebp, 0xa
jne 0x1400785a0
cmp edi, 0xd
jne 0x1400787e0
cmp bpl, 0xa
jne 0x1400787e0
inc r13
vmovaps xmm6, xmm7
vmovaps xmm11, xmm0
vmovaps xmm9, xmm13
jmp 0x14007847d
vmovss xmm1, dword [0x1400a8730]
test r12b, r12b
je 0x1400785b6
vmovss xmm1, dword [rsp + 0x1d4]
mov rdi, qword [rsp + 0x208]
vaddss xmm11, xmm10, xmm1
cmp byte [rsp + 0x5f], 0
mov r12, qword [rsp + 0x70]
je 0x140078f90
vsubss xmm0, xmm11, xmm0
vmulss xmm0, xmm0, dword [0x1400aa07c]
vaddss xmm0, xmm11, xmm0
vmovss xmm1, dword [0x1400a9ea4]
vmulss xmm1, xmm1, dword [rsp + 0x1d8]
vcmpunordss xmm2, xmm0, xmm0
vmaxss xmm0, xmm15, xmm0
vblendvps xmm0, xmm0, xmm15, xmm2
vmovaps xmm4, xmmword [rsp + 0x170]
vucomiss xmm4, xmm0
jb 0x140078f90
vaddss xmm1, xmm11, xmm1
vcmpunordss xmm2, xmm1, xmm1
vmovaps xmm3, xmmword [rsp + 0x130]
vminss xmm1, xmm3, xmm1
vblendvps xmm1, xmm1, xmm3, xmm2
vsubss xmm1, xmm1, xmm0
vaddss xmm0, xmm0, xmm1
vucomiss xmm0, xmm4
jb 0x140078f90
vmaxss xmm0, xmm14, xmm8
vcmpunordss xmm1, xmm8, xmm8
vblendvps xmm0, xmm0, xmm14, xmm1
vmovaps xmm3, xmmword [rsp + 0x210]
vucomiss xmm3, xmm0
jb 0x140078f90
vaddss xmm1, xmm8, dword [r15 + 8]
vcmpunordss xmm2, xmm1, xmm1
vminss xmm1, xmm12, xmm1
vblendvps xmm1, xmm1, xmm12, xmm2
vsubss xmm1, xmm1, xmm0
vaddss xmm0, xmm0, xmm1
vucomiss xmm0, xmm3
jb 0x140078f90
mov qword [rsp + 0x120], rdi
movzx eax, byte [0x1400e4449]
cmp al, byte [0x1400e4448]
jne 0x140078e90
mov r9, qword [0x1400e4468]
movzx eax, word [r9 + 0x81040]
test rax, rax
je 0x140078e90
lea rcx, [r9 + 0x40]
lea r12, [r9 + 0x1060]
mov dil, 1
mov rdx, r12
xor r15d, r15d
jmp 0x1400786fa
inc r15
cmp r15, rax
setb dil
add rdx, 0x1020
cmp rax, r15
je 0x140078db7
cmp byte [rdx - 7], 8
jne 0x1400786e0
test byte [rdx - 0x1020], 4
je 0x1400786e0
mov qword [rsp + 0x150], r9
mov r8d, r15d
not r8d
add r8d, eax
imul r8, r8, 0x1020
mov qword [rsp + 0x238], rcx
call fcn.140091e40
mov r9, qword [rsp + 0x150]
movzx eax, word [r9 + 0x81040]
sub rax, r15
add rax, 0xffff
mov word [r9 + 0x81040], ax
test dil, 1
je 0x140078daf
or byte [0x1400e444c], 2
cmp dword [rsi + 0x44ac], 0
je 0x14007902d
mov rcx, rsi
mov rdx, r14
lea r8, [rsp + 0xb0]
call fcn.1400650d0
mov r12, rax
mov rcx, rsi
mov rdx, r14
lea r8, [rsp + 0x40]
call fcn.1400655c0
test r12, r12
mov r15, qword [rsp + 0x68]
js 0x140079036
cmp qword [rsp + 0xb0], r14
jne 0x140079036
test rax, rax
js 0x1400791dc
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0x48]
add rdx, rcx
mov rdi, r14
cmp rdx, r14
jg 0x140079047
jmp 0x1400791df
cmp byte [rsp + 0x5f], 0
je 0x140078932
vmaxss xmm0, xmm14, xmm8
vcmpunordss xmm1, xmm8, xmm8
vblendvps xmm0, xmm0, xmm14, xmm1
vmovaps xmm1, xmmword [rsp + 0x210]
vucomiss xmm1, xmm0
jb 0x140078932
vaddss xmm0, xmm8, dword [r15 + 8]
vucomiss xmm0, xmm1
mov r12, qword [rsp + 0x70]
jbe 0x140078a50
vmovaps xmm0, xmmword [rsp + 0x170]
vucomiss xmm0, xmm10
jb 0x140078a50
movzx eax, byte [0x1400e4449]
cmp al, byte [0x1400e4448]
jne 0x140078958
mov rdi, qword [0x1400e4468]
movzx eax, word [rdi + 0x81040]
test rax, rax
je 0x140078958
lea rcx, [rdi + 0x40]
lea rdx, [rdi + 0x1060]
mov r15b, 1
xor r12d, r12d
jmp 0x14007889a
inc r12
cmp r12, rax
setb r15b
add rdx, 0x1020
cmp rax, r12
je 0x140078958
cmp byte [rdx - 7], 8
jne 0x140078880
test byte [rdx - 0x1020], 1
je 0x140078880
not r12d
add eax, r12d
imul r8, rax, 0x1020
call fcn.140091e40
mov r10, qword [rsp + 0x78]
mov r9, qword [rsp + 0x60]
add r12d, dword [rdi + 0x81040]
mov word [rdi + 0x81040], r12w
test r15b, 1
je 0x140078958
or byte [0x1400e444c], 2
lock or word [rsi + 2], 0x12
test byte [rsp + 0xa8], 0x20
mov r15, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
jne 0x14007896e
lock or word [rsi + 2], 2
mov qword [rsi + 0x4578], r14
cmp qword [rsi + 0x4570], r14
mov rax, r10
mov rcx, qword [rsp + 0x98]
cmovg rax, rcx
cmovg rcx, r10
mov qword [rsi + 0x4580], rax
mov qword [rsi + 0x4588], rcx
jmp 0x14007896e
mov r12, qword [rsp + 0x70]
jmp 0x140078a50
vmovups xmm1, xmmword [0x1401789e4]
vmovaps xmmword [rsp + 0x180], xmm1
add rdx, r9
mov rbx, rdx
jmp 0x14007854d
movzx eax, word [rsi + 2]
test al, 0x10
mov r15, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
je 0x140078a50
mov rax, qword [rsi + 0x4570]
mov qword [rsi + 0x4590], rax
test r14, r14
mov edi, 0
cmovg rdi, r14
movsxd rax, dword [rsi + 0x44ac]
cmp rdi, rax
cmovge rdi, rax
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
imul rax, qword [rsp + 0xb0], 0xf4240
mov rcx, qword [rsp + 0x40]
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x1400789d3
xor edx, edx
div rcx
jmp 0x1400789d7
xor edx, edx
div ecx
mov qword [0x1400f2008], rax
lock or word [rsi + 2], 4
mov qword [rsi + 0x4570], rdi
movzx eax, word [rsi + 2]
test al, 2
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x98]
jne 0x140078a10
mov rax, qword [r10]
mov qword [rcx], rax
mov r8, rcx
jmp 0x140078a21
mov rdx, qword [rcx]
mov rax, rcx
mov r8, rcx
mov rcx, r10
cmp rdx, qword [r10]
jl 0x140078a27
mov rax, r10
mov rcx, r8
mov qword [rsi + 0x4580], rax
mov qword [rsi + 0x4588], rcx
vmovaps xmm13, xmm10
vmovss dword [rsp + 0x84], xmm8
nop word cs:[rax + rax]
vmovaps xmm6, xmm10
cmp r14, r12
je 0x140078a5d
vmovaps xmm6, xmm7
cmp r12, qword [rsp + 0x90]
jge 0x140078b5c
cmp r13, r12
jl 0x140078ade
cmp r14, qword [rsp + 0x90]
jg 0x140078ade
vsubss xmm0, xmm10, xmm15
vcvttss2si rax, xmm0
vcvtsi2ss xmm2, xmm5, rax
vmovss xmm3, dword [r15 + 8]
vmovups xmm0, xmmword [0x1401789f4]
vmovaps xmmword [rsp + 0xb0], xmm0
vmovss dword [rsp + 0x40], xmm15
vmovss dword [rsp + 0x44], xmm14
vmovaps xmm0, xmmword [rsp + 0x130]
vmovss dword [rsp + 0x48], xmm0
vmovss dword [rsp + 0x4c], xmm12
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
vmovaps xmm0, xmm15
jmp 0x140078b49
cmp r12, r13
jle 0x140078b5c
cmp r12, r14
jg 0x140078b5c
cmp r14, qword [rsp + 0x90]
jg 0x140078b5c
vmovss xmm3, dword [r15 + 8]
vsubss xmm2, xmm10, xmm6
vmovups xmm0, xmmword [0x1401789f4]
vmovaps xmmword [rsp + 0xb0], xmm0
vmovss dword [rsp + 0x40], xmm15
vmovss dword [rsp + 0x44], xmm14
vmovaps xmm0, xmmword [rsp + 0x130]
vmovss dword [rsp + 0x48], xmm0
vmovss dword [rsp + 0x4c], xmm12
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
vmovaps xmm0, xmm6
vmovaps xmm1, xmm8
call fcn.14000ee60
mov r10, qword [rsp + 0x78]
mov r9, qword [rsp + 0x60]
vaddss xmm8, xmm8, dword [r15 + 8]
inc r14
mov rax, qword [r10]
vmovaps xmm10, xmm15
cmp rax, r14
lea rdi, [rsp + 0xb0]
mov r10, qword [rsp + 0x148]
jle 0x140078cdd
lea rcx, [r9 + r14]
mov rdx, rcx
cmp r14, qword [rsp + 0x88]
jge 0x140078bb8
mov rdx, rcx
nop word [rax + rax]
movzx r8d, byte [rdx]
cmp r8d, 0xa
je 0x140078bb8
cmp r8d, 0xd
je 0x140078bb8
inc rdx
cmp rdx, r10
jb 0x140078ba0
sub rdx, r9
vmovaps xmm10, xmm15
cmp rax, rdx
jg 0x140078cdd
movzx edx, byte [0x140178b9c]
vxorps xmm0, xmm0, xmm0
cmp rax, r14
je 0x140078cbe
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rcx
add rax, r9
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], 0
movzx eax, dl
vcvtsi2ss xmm0, xmm5, eax
vmovss dword [rsp + 0xd0], xmm0
vxorps xmm0, xmm0, xmm0
vmovlps qword [rsp + 0xd4], xmm0
mov qword [rsp + 0xe0], r15
vxorps xmm0, xmm0, xmm0
lea r9, [rsp + 0xe8]
vmovups ymmword [r9], ymm0
mov qword [r9 + 0x20], 0
mov rcx, r15
xor edx, edx
xor r8d, r8d
vzeroupper
call fcn.14000ce50
mov qword [rsp + 0xf8], rax
mov rcx, rdi
call fcn.14000d250
test rax, rax
je 0x140078c8c
vxorps xmm9, xmm9, xmm9
vxorps xmm7, xmm7, xmm7
vaddss xmm7, xmm9, xmm7
vmovss xmm9, dword [rsp + 0xd8]
mov rcx, rdi
call fcn.14000d250
test rax, rax
jne 0x140078c70
jmp 0x140078c90
vxorps xmm7, xmm7, xmm7
mov rax, qword [rsp + 0x108]
vmovss xmm0, dword [rax + 0x18]
vcmpltss xmm1, xmm0, dword [0x1400a9ed4]
vmovss xmm2, dword [rsp + 0xd8]
vblendvps xmm0, xmm0, xmm2, xmm1
vaddss xmm0, xmm0, dword [rax + 0x10]
vaddss xmm0, xmm7, xmm0
vaddss xmm1, xmm0, dword [rsp + 0x164]
vmovss xmm2, dword [rsp + 0x168]
vcmpnless xmm0, xmm2, xmm0
vandnps xmm0, xmm0, xmm1
vsubss xmm10, xmm15, xmm0
mov r8d, dword [rsp + 0xac]
inc r8d
cmp byte [rsp + 0xa4], 0
mov dword [rsp + 0xac], r8d
je 0x140078d9a
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x48], 0
lea rcx, [rsp + 0x40]
lea rdx, [0x1400aac98]
call fcn.140002640
vmovups xmm0, xmmword [rsp + 0x40]
vmovaps xmmword [rsp + 0x220], xmm0
vmovups xmm0, xmmword [0x140178a04]
vmovaps xmmword [rsp + 0x190], xmm0
vmovaps xmm0, xmmword [rsp + 0x250]
vmovlps qword [rsp + 0x240], xmm0
vmovss dword [rsp + 0x248], xmm15
vmovss dword [rsp + 0x24c], xmm12
lea rax, [rsp + 0x240]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x20], r15
mov byte [rsp + 0x28], 8
lea rcx, [rsp + 0x220]
vmovss xmm1, dword [rsp + 0x16c]
vmovaps xmm2, xmm8
lea r9, [rsp + 0x190]
call fcn.14000f260
xor r12d, r12d
mov r13, r14
vmovaps xmm11, xmm15
vmovaps xmm9, xmm13
jmp 0x14007847d
mov rcx, qword [rsp + 0x238]
test ax, ax
je 0x140078e90
movzx eax, ax
mov r15b, 1
xor edi, edi
jmp 0x140078dea
inc rdi
cmp rdi, rax
setb r15b
add r12, 0x1020
cmp rax, rdi
je 0x140078e90
cmp byte [r12 - 7], 8
jne 0x140078dd0
test byte [r12 - 0x1020], 1
je 0x140078dd0
not edi
add eax, edi
imul r8, rax, 0x1020
mov qword [rsp + 0x150], r9
mov rdx, r12
call fcn.140091e40
mov r8, qword [rsp + 0x78]
mov rax, qword [rsp + 0x150]
add edi, dword [rax + 0x81040]
mov word [rax + 0x81040], di
test r15b, 1
je 0x140078e90
or byte [0x1400e444c], 2
lock or word [rsi + 2], 0x12
test byte [rsp + 0xa8], 0x20
jne 0x14007912f
lock or word [rsi + 2], 2
mov qword [rsi + 0x4578], r14
mov rax, qword [rsi + 0x4570]
cmp rax, r14
mov rcx, r8
mov rdx, qword [rsp + 0x98]
cmovg rcx, rdx
cmovg rdx, r8
mov qword [rsi + 0x4580], rcx
mov qword [rsi + 0x4588], rdx
jmp 0x140079132
movzx ecx, word [rsi + 2]
mov rax, qword [rsi + 0x4570]
test cl, 0x10
mov r15, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x120]
je 0x140078f90
mov qword [rsi + 0x4590], rax
test r14, r14
mov edi, 0
cmovg rdi, r14
movsxd rax, dword [rsi + 0x44ac]
cmp rdi, rax
cmovge rdi, rax
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
imul rax, qword [rsp + 0xb0], 0xf4240
mov rcx, qword [rsp + 0x40]
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x140078f14
xor edx, edx
div rcx
jmp 0x140078f18
xor edx, edx
div ecx
mov r8, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x98]
mov qword [0x1400f2008], rax
lock or word [rsi + 2], 4
mov qword [rsi + 0x4570], rdi
movzx eax, word [rsi + 2]
test al, 2
jne 0x140078f54
mov rax, qword [r8]
mov qword [rcx], rax
mov r9, rcx
mov rdi, qword [rsp + 0x120]
jmp 0x140078f6a
mov rax, qword [r8]
mov r9, rcx
mov rdx, r8
cmp qword [rcx], rax
mov rdi, qword [rsp + 0x120]
jl 0x140078f70
mov rcx, r8
mov rdx, r9
mov qword [rsi + 0x4580], rcx
mov qword [rsi + 0x4588], rdx
vmovss dword [rsp + 0x84], xmm8
nop word [rax + rax]
vmovaps xmm9, xmm11
cmp r14, rax
je 0x140078f9f
vmovaps xmm9, xmm13
vmovaps xmm6, xmm11
cmp r14, r12
je 0x140078fac
vmovaps xmm6, xmm7
cmp r14, qword [rsp + 0x90]
jne 0x14007840b
cmp r12, r13
jle 0x1400783aa
cmp r12, qword [rsp + 0x90]
jge 0x14007840b
vmovss xmm3, dword [r15 + 8]
vsubss xmm2, xmm11, xmm6
vmovups xmm0, xmmword [0x1401789f4]
vmovaps xmmword [rsp + 0xb0], xmm0
vmovss dword [rsp + 0x40], xmm15
vmovss dword [rsp + 0x44], xmm14
vmovaps xmm0, xmmword [rsp + 0x130]
vmovss dword [rsp + 0x48], xmm0
vmovss dword [rsp + 0x4c], xmm12
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
vmovaps xmm0, xmm6
jmp 0x140078402
xor eax, eax
mov r15, qword [rsp + 0x68]
jmp 0x14007905c
test rax, rax
js 0x140079056
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0x48]
add rdx, rcx
mov rdi, rcx
mov r12, rax
cmp rdx, r14
jge 0x1400791df
mov eax, dword [rsi + 0x44ac]
mov rcx, qword [rsi + 0x44a0]
cdqe
lea rdi, [rcx + r14]
mov r12, rdi
cmp r14, rax
mov r9, qword [rsp + 0x60]
jge 0x140079099
lea rdx, [rcx + rax]
mov r12, rdi
jmp 0x140079088
inc r12
cmp r12, rdx
jae 0x140079099
movzx r8d, byte [r12]
cmp r8d, 0x20
je 0x140079080
cmp r8d, 9
je 0x140079080
lea rdx, [rdi - 1]
cmp rdx, rcx
jae 0x1400790b8
jmp 0x1400790ce
dec rdx
cmp rdx, rcx
jb 0x1400790c8
movzx r8d, byte [rdx]
cmp r8d, 0x20
je 0x1400790b0
cmp r8d, 9
je 0x1400790b0
inc rdx
mov rdi, rdx
sub r12, r9
mov rcx, qword [rsi + 0x4570]
test r12, r12
mov edx, 0
cmovle r12, rdx
mov qword [rsi + 0x4590], rcx
cmp r12, rax
cmovge r12, rax
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
imul rax, qword [rsp + 0xb0], 0xf4240
mov rcx, qword [rsp + 0x40]
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x140079141
xor edx, edx
div rcx
jmp 0x140079145
mov rax, qword [r8]
mov r15, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
jmp 0x140078eb6
xor edx, edx
div ecx
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x78]
mov r10, qword [rsp + 0x98]
mov qword [0x1400f2008], rax
lock or word [rsi + 2], 4
mov qword [rsi + 0x4570], r12
movzx eax, word [rsi + 2]
test al, 2
jne 0x140079180
mov rax, qword [r9]
mov qword [r10], rax
mov r12, qword [rsp + 0x70]
jmp 0x140079193
mov rdx, qword [r10]
mov rax, r10
mov rcx, r9
cmp rdx, qword [r9]
mov r12, qword [rsp + 0x70]
jl 0x140079199
mov rax, r9
mov rcx, r10
mov qword [rsi + 0x4580], rax
mov qword [rsi + 0x4588], rcx
lock or word [rsi + 2], 2
sub rdi, r8
mov qword [rsi + 0x4578], rdi
mov rax, qword [rsi + 0x4570]
cmp rax, rdi
mov rcx, r9
cmovg rcx, r10
mov rdx, r10
cmovg rdx, r9
mov rdi, qword [rsp + 0x120]
jmp 0x140078f70
mov rdi, r14
mov rax, qword [rsi + 0x4570]
mov qword [rsi + 0x4590], rax
movsxd r15, dword [rsi + 0x44ac]
cmp r12, r15
cmovl r15, r12
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
imul rax, qword [rsp + 0xb0], 0xf4240
mov rcx, qword [rsp + 0x40]
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x140079238
xor edx, edx
div rcx
jmp 0x14007923c
xor edx, edx
div ecx
mov r12, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x98]
mov qword [0x1400f2008], rax
lock or word [rsi + 2], 4
mov qword [rsi + 0x4570], r15
movzx eax, word [rsi + 2]
test al, 2
jne 0x140079277
mov rax, qword [r8]
mov qword [r9], rax
mov r15, qword [rsp + 0x68]
jmp 0x14007928a
mov rdx, qword [r9]
mov rax, r9
mov rcx, r8
cmp rdx, qword [r8]
mov r15, qword [rsp + 0x68]
jl 0x140079290
mov rax, r8
mov rcx, r9
mov qword [rsi + 0x4580], rax
mov qword [rsi + 0x4588], rcx
lock or word [rsi + 2], 2
mov qword [rsi + 0x4578], rdi
mov rax, qword [rsi + 0x4570]
cmp rax, rdi
mov rcx, r8
cmovg rcx, r9
mov rdx, r9
cmovg rdx, r8
mov rdi, qword [rsp + 0x120]
jmp 0x140078f70
vmovaps xmm6, xmm15
vmovaps xmm9, xmm15
cmp byte [rsp + 0x5f], 0
je 0x140079429
vmaxss xmm0, xmm14, xmm8
vcmpunordss xmm1, xmm8, xmm8
vblendvps xmm0, xmm0, xmm14, xmm1
vmovaps xmm1, xmmword [rsp + 0x210]
vucomiss xmm1, xmm0
jb 0x140079429
vaddss xmm0, xmm8, dword [r15 + 8]
vucomiss xmm0, xmm1
jbe 0x140079429
vmovaps xmm0, xmmword [rsp + 0x170]
vucomiss xmm0, xmm10
mov r14, qword [rsp + 0x70]
jb 0x1400796eb
movzx eax, byte [0x1400e4449]
cmp al, byte [0x1400e4448]
jne 0x14007966d
mov rdi, qword [0x1400e4468]
movzx eax, word [rdi + 0x81040]
test rax, rax
je 0x14007966d
lea rcx, [rdi + 0x40]
lea rdx, [rdi + 0x1060]
mov bpl, 1
xor ebx, ebx
jmp 0x14007938a
inc rbx
cmp rbx, rax
setb bpl
add rdx, 0x1020
cmp rax, rbx
je 0x14007966d
cmp byte [rdx - 7], 8
jne 0x140079370
test byte [rdx - 0x1020], 1
je 0x140079370
not ebx
add eax, ebx
imul r8, rax, 0x1020
call fcn.140091e40
mov rdx, qword [rsp + 0x78]
add ebx, dword [rdi + 0x81040]
mov word [rdi + 0x81040], bx
test bpl, 1
je 0x14007966d
or byte [0x1400e444c], 2
lock or word [rsi + 2], 0x12
test byte [rsp + 0xa8], 0x20
mov rbx, qword [rsp + 0x118]
jne 0x140079681
lock or word [rsi + 2], 2
mov rax, qword [rsp + 0x88]
mov qword [rsi + 0x4578], rax
cmp qword [rsi + 0x4570], rax
lea rax, [rsi + 0x4578]
mov rcx, rdx
cmovg rcx, rax
cmovg rax, rdx
mov qword [rsi + 0x4580], rcx
mov qword [rsi + 0x4588], rax
jmp 0x140079681
mov rbx, qword [rsp + 0x118]
mov r14, qword [rsp + 0x70]
cmp r14, qword [rsp + 0x90]
je 0x140079540
cmp r13, r14
jl 0x1400794bf
mov rax, qword [rsp + 0x90]
cmp rax, qword [rsp + 0x88]
jl 0x1400794bf
vsubss xmm0, xmm10, xmm15
vcvttss2si rax, xmm0
vcvtsi2ss xmm2, xmm5, rax
vmovss xmm3, dword [r15 + 8]
vmovups xmm0, xmmword [0x1401789f4]
vmovaps xmmword [rsp + 0xb0], xmm0
vmovss dword [rsp + 0x40], xmm15
vmovss dword [rsp + 0x44], xmm14
vmovaps xmm0, xmmword [rsp + 0x130]
vmovss dword [rsp + 0x48], xmm0
vmovss dword [rsp + 0x4c], xmm12
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
vmovaps xmm0, xmm15
jmp 0x140079537
cmp r14, r13
jle 0x140079540
cmp r14, qword [rsp + 0x88]
jg 0x140079540
mov rax, qword [rsp + 0x90]
cmp rax, qword [rsp + 0x88]
jl 0x140079540
vmovss xmm3, dword [r15 + 8]
vsubss xmm2, xmm10, xmm6
vmovups xmm0, xmmword [0x1401789f4]
vmovaps xmmword [rsp + 0xb0], xmm0
vmovss dword [rsp + 0x40], xmm15
vmovss dword [rsp + 0x44], xmm14
vmovaps xmm0, xmmword [rsp + 0x130]
vmovss dword [rsp + 0x48], xmm0
vmovss dword [rsp + 0x4c], xmm12
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
vmovaps xmm0, xmm6
vmovaps xmm1, xmm8
call fcn.14000ee60
cmp rbx, rsi
je 0x140079558
vmovss xmm0, dword [rsp + 0x128]
vmulss xmm0, xmm0, dword [0x1400a9f50]
jmp 0x140079561
vmovss xmm0, dword [rsp + 0x128]
lea rcx, [rsp + 0xb0]
vmovss xmm1, dword [rsp + 0x84]
mov rax, qword [rsp + 0x88]
cmp qword [rsi + 0x4570], rax
je 0x140079588
vmovaps xmm10, xmm9
vcvtsi2ss xmm3, xmm5, dword [r15]
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0xb8], eax
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0xb0], rax
vmovss dword [rsp + 0xbc], xmm0
vmovss dword [rsp + 0x40], xmm15
vmovss dword [rsp + 0x44], xmm14
vmovaps xmm0, xmmword [rsp + 0x130]
vmovss dword [rsp + 0x48], xmm0
vmovss dword [rsp + 0x4c], xmm12
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
vmovss xmm2, dword [0x1400a8720]
vmovaps xmm0, xmm10
call fcn.14000ee60
lock and word [rsi + 2], 0xffdf
xor eax, eax
xchg byte [rsi], al
vmovaps xmm6, xmmword [rsp + 0x270]
vmovaps xmm7, xmmword [rsp + 0x280]
vmovaps xmm8, xmmword [rsp + 0x290]
vmovaps xmm9, xmmword [rsp + 0x2a0]
vmovaps xmm10, xmmword [rsp + 0x2b0]
vmovaps xmm11, xmmword [rsp + 0x2c0]
vmovaps xmm12, xmmword [rsp + 0x2d0]
vmovaps xmm13, xmmword [rsp + 0x2e0]
vmovaps xmm14, xmmword [rsp + 0x2f0]
vmovaps xmm15, xmmword [rsp + 0x300]
add rsp, 0x318
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movzx eax, word [rsi + 2]
test al, 0x10
mov rbx, qword [rsp + 0x118]
je 0x140079436
mov rax, qword [rsi + 0x4570]
mov qword [rsi + 0x4590], rax
xor edi, edi
mov rax, qword [rsp + 0x88]
test rax, rax
cmovg rdi, rax
movsxd rax, dword [rsi + 0x44ac]
cmp rdi, rax
cmovge rdi, rax
lea rcx, [rsp + 0xb0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
imul rax, qword [rsp + 0xb0], 0xf4240
mov rcx, qword [rsp + 0x40]
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x1400796f8
xor edx, edx
div rcx
jmp 0x1400796fc
mov rbx, qword [rsp + 0x118]
jmp 0x140079436
xor edx, edx
div ecx
mov qword [0x1400f2008], rax
lock or word [rsi + 2], 4
mov qword [rsi + 0x4570], rdi
movzx ecx, word [rsi + 2]
lea rax, [rsi + 0x4578]
test cl, 2
mov rdx, qword [rsp + 0x78]
jne 0x14007972d
mov rcx, qword [rdx]
mov qword [rax], rcx
jmp 0x14007973d
mov rcx, qword [rax]
cmp rcx, qword [rdx]
jge 0x14007973d
mov rcx, rax
mov rax, rdx
jmp 0x140079740
mov rcx, rdx
mov qword [rsi + 0x4580], rcx
mov qword [rsi + 0x4588], rax
vmovaps xmm9, xmm10
vmovss dword [rsp + 0x84], xmm8
jmp 0x140079436