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

Disassembly:
mov qword [rsp + 0x10], rdx
push rbp
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov eax, dword [rcx + 0xb0]
mov rdi, rcx
mov r14, qword [0x1402ed1d8]
inc eax
mov r13, rdx
mov dword [rbp - 0x74], eax
movzx r8d, byte [rdi + 0xcc]
mov ecx, dword [r14 + 0x4098]
mov dword [rbp - 0x78], ecx
test r8b, 0x40
je 0x140023e64
mov byte [rbp + 0xc8], 1
cmp eax, ecx
je 0x140023e6b
mov byte [rbp + 0xc8], 0
xor r12d, r12d
cmp dword [rdi + 0xc0], r12d
je 0x140023e83
mov dword [rsp + 0x60], 1
cmp eax, ecx
je 0x140023e88
mov dword [rsp + 0x60], r12d
and r8b, 0xbf
mov dword [rdi + 0xc0], r12d
mov byte [rdi + 0xcc], r8b
mov rdx, rdi
mov rax, qword [rdi + 0x18]
mov qword [rsp + 0x78], rdx
test rax, rax
je 0x140023eca
nop dword [rax + rax]
mov qword [rsp + 0x78], rax
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x140023eb0
mov r13, qword [rbp + 0xb8]
mov rdx, qword [rsp + 0x78]
mov rax, qword [r14 + 0x4ef8]
mov qword [rsp + 0x168], r15
test rax, rax
je 0x140023eee
cmp qword [rax + 0x458], rdi
sete r15b
jmp 0x140023f97
mov rcx, qword [r14 + 0x4d00]
test rcx, rcx
je 0x140023f94
mov eax, dword [rdi]
cmp dword [rdx + 0xb8], eax
jne 0x140023f94
mov rcx, qword [rcx + 0x3c0]
test dword [rcx + 0x14], 0x10000000
je 0x140023f37
nop dword [rax]
mov rax, qword [rcx + 0x3b0]
mov rcx, qword [rax + 0x3c0]
test dword [rcx + 0x14], 0x10000000
jne 0x140023f20
mov rax, qword [rcx + 0x460]
test rax, rax
jne 0x140023f50
mov rax, qword [rcx + 0x458]
test rax, rax
je 0x140023f94
nop
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140023f6c
nop dword [rax]
mov rax, rcx
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x140023f60
cmp rax, rdx
je 0x140024155
mov rax, qword [rax + 0x88]
test rax, rax
je 0x140023f94
mov rax, qword [rax + 0x3c0]
mov rax, qword [rax + 0x458]
test rax, rax
jne 0x140023f50
xor r15b, r15b
mov ecx, dword [rdi + 0x10]
mov eax, ecx
shr eax, 0xd
test al, 1
jne 0x14002518f
mov eax, ecx
shr eax, 0xc
test al, 1
jne 0x14002518f
movzx eax, byte [r13 + 0xf8]
mov qword [rsp + 0x178], rbx
mov qword [rsp + 0x170], rsi
vmovaps xmmword [rsp + 0x150], xmm6
vmovaps xmmword [rsp + 0x140], xmm7
shr ecx, 0xa
mov byte [rsp + 0x30], al
vmovaps xmmword [rsp + 0x130], xmm8
vmovaps xmmword [rsp + 0x120], xmm9
test cl, 1
jne 0x14002400e
mov byte [r13 + 0xf8], r12b
mov dword [r13 + 0x198], 1
mov ecx, dword [rdi]
call fcn.140013c40
mov rax, qword [rdi + 0x40]
mov qword [rsp + 0x38], rax
mov rbx, rax
test rax, rax
jne 0x140024032
mov rcx, rdi
call fcn.140025220
mov rbx, qword [rdi + 0x40]
and byte [rdi + 0xcc], 0xfd
lea r11, [0x14012d300]
movzx eax, r15b
mov dword [rsp + 0x48], r12d
add al, al
or byte [rdi + 0xcc], al
test dword [rdi + 0x10], 0x4000
jne 0x14002415d
cmp dword [r14 + 0x3a20], 0xffffffff
je 0x14002415d
mov rax, qword [0x1402ed1d8]
lea rdx, [0x14012ca59]
mov byte [rbp + 0xc0], 1
mov r8b, 0x23
mov r10, qword [rax + 0x4140]
movsxd rcx, dword [r10 + 0x130]
mov rax, qword [r10 + 0x138]
mov r9d, dword [rax + rcx*4 - 4]
not r9d
mov esi, r9d
cmp r8b, 0x23
jne 0x1400240b7
cmp byte [rdx], r8b
jne 0x1400240b7
cmp byte [rdx + 1], r8b
cmove esi, r9d
movzx ecx, sil
movzx eax, r8b
movzx r8d, byte [rdx]
xor rcx, rax
shr esi, 8
inc rdx
xor esi, dword [r11 + rcx*4]
test r8b, r8b
jne 0x1400240a4
mov rax, qword [r10]
not esi
cmp dword [rax + 0x418c], esi
jne 0x1400240f5
lea r8, str.WindowMenu
mov edx, 0xb
mov ecx, esi
call fcn.14002a050
mov rdx, qword [0x1402ed1d8]
movsxd rax, dword [rdx + 0x4c58]
cmp dword [rdx + 0x4c48], eax
jle 0x140024164
imul rcx, rax, 0x38
mov rax, qword [rdx + 0x4c50]
cmp dword [rcx + rax], esi
jne 0x140024164
mov esi, dword [rbx + 0x1c]
mov rdx, rbx
mov rcx, rdi
call fcn.140023c90
mov eax, dword [rbx + 0x1c]
test eax, eax
je 0x14002413e
cmp eax, esi
mov r8d, r12d
cmovne r8d, eax
mov dword [rsp + 0x48], r8d
movzx ecx, byte [rdi + 0xcc]
shr cl, 1
and cl, 1
or cl, r15b
mov byte [rbp + 0xb0], cl
jmp 0x14002416b
mov r15b, 1
jmp 0x140023f97
mov byte [rbp + 0xc0], r12b
mov byte [rbp + 0xb0], r15b
mov rax, qword [0x1402ed1d8]
vmovss xmm6, dword [rdi + 0x4c]
vmovss xmm7, dword [rdi + 0x48]
vaddss xmm8, xmm7, dword [rdi + 0x50]
vaddss xmm1, xmm6, dword [rax + 0x3e78]
movzx edx, byte [rdi + 0xcc]
vxorps xmm0, xmm0, xmm0
vmovss dword [rbp - 0x80], xmm0
vmovss dword [rbp - 0x7c], xmm0
vmovss xmm0, dword [rax + 0x3a38]
vaddss xmm2, xmm0, xmm0
vaddss xmm9, xmm2, xmm1
vmovss dword [rsp + 0x74], xmm9
vmovss dword [rsp + 0x68], xmm7
vmovss dword [rsp + 0x6c], xmm6
vmovss dword [rsp + 0x70], xmm8
vmovss xmm2, dword [rax + 0x3a0c]
vmovss xmm1, dword [rax + 0x3a34]
vmovss xmm5, dword [rax + 0x3e78]
vaddss xmm0, xmm2, xmm7
vaddss xmm3, xmm0, xmm1
vsubss xmm0, xmm8, xmm2
vaddss xmm2, xmm6, dword [rax + 0x3a38]
vsubss xmm4, xmm0, xmm1
vmovss dword [rsp + 0x58], xmm4
vmovss dword [rsp + 0x54], xmm6
vmovss dword [rsp + 0x5c], xmm9
vmovss dword [rsp + 0x50], xmm3
test dl, 8
je 0x140024233
vsubss xmm0, xmm4, xmm5
vmovss dword [rbp - 0x80], xmm0
vaddss xmm0, xmm5, dword [rax + 0x3a4c]
vsubss xmm4, xmm4, xmm0
vmovss dword [rsp + 0x58], xmm4
vmovss dword [rbp - 0x7c], xmm2
test dl, 0x10
je 0x140024274
cmp dword [rax + 0x3a20], r12d
jne 0x140024255
vaddss xmm0, xmm5, dword [rax + 0x3a4c]
vaddss xmm1, xmm0, xmm3
vmovss dword [rsp + 0x50], xmm1
jmp 0x140024274
cmp dword [rax + 0x3a20], 1
jne 0x140024274
vaddss xmm0, xmm5, dword [rax + 0x3a4c]
vsubss xmm1, xmm4, xmm0
vmovss dword [rsp + 0x58], xmm1
vsubss xmm3, xmm4, xmm5
mov r15d, r12d
mov eax, dword [rbx]
vmovups xmm0, xmmword [rsp + 0x50]
vmovups xmmword [rbp - 0x60], xmm0
vmovss dword [rsp + 0x50], xmm3
vmovss dword [rsp + 0x54], xmm2
mov dword [rsp + 0x4c], eax
cmp dword [rdi + 0x30], r12d
jle 0x140024313
mov rsi, r12
nop dword [rax]
mov rax, qword [rdi + 0x38]
mov r9, qword [rsi + rax]
mov r8d, dword [r9 + 0xb8]
test r8d, r8d
je 0x1400242de
mov edx, dword [rbx]
mov eax, r12d
test edx, edx
jle 0x1400242de
mov rcx, qword [rbx + 8]
cmp dword [rcx], r8d
je 0x1400242d2
inc eax
add rcx, 0x38
cmp eax, edx
jl 0x1400242c1
jmp 0x1400242de
cdqe
imul rcx, rax, 0x38
add rcx, qword [rbx + 8]
jne 0x1400242ee
mov r8, r9
mov edx, 0x400000
mov rcx, rbx
call fcn.140054c70
inc r15d
add rsi, 8
cmp r15d, dword [rdi + 0x30]
jl 0x1400242a0
vmovss xmm9, dword [rsp + 0x74]
vmovss xmm8, dword [rsp + 0x70]
vmovss xmm6, dword [rsp + 0x6c]
vmovss xmm7, dword [rsp + 0x68]
movzx eax, byte [rbp + 0xb0]
test al, al
je 0x140024332
mov eax, dword [r14 + 0x4098]
mov dword [rdi + 0xb4], eax
movzx eax, byte [rbp + 0xb0]
cmp byte [r13 + 0xf6], r12b
je 0x140024342
mov ecx, 0xc
jmp 0x14002434e
test al, al
mov rcx, r12
setne cl
add rcx, 0xa
mov rax, qword [0x1402ed1d8]
add rcx, rcx
vmovups xmm0, xmmword [rax + rcx*8 + 0x3ae0]
vmovups xmmword [rbp - 0x70], xmm0
vshufps xmm0, xmm0, xmm0, 0xff
vmulss xmm0, xmm0, dword [rax + 0x39f8]
lea rcx, [rbp - 0x70]
vmovss dword [rbp - 0x64], xmm0
call fcn.140003f00
vmovss xmm3, dword [r14 + 0x3acc]
vmovss xmm1, dword [r13 + 0x58]
vmovss xmm2, dword [r13 + 0x5c]
vaddss xmm0, xmm3, xmm1
vcomiss xmm0, xmm7
vaddss xmm0, xmm1, dword [r13 + 0x60]
vmovaps xmm7, xmmword [rsp + 0x140]
vsubss xmm1, xmm0, xmm3
setae cl
mov r11d, eax
vcomiss xmm8, xmm1
vmovaps xmm8, xmmword [rsp + 0x130]
setae r10b
vaddss xmm0, xmm3, xmm2
vcomiss xmm0, xmm6
vaddss xmm0, xmm2, dword [r13 + 0x64]
setae dl
vsubss xmm1, xmm0, xmm3
vcomiss xmm9, xmm1
vmovaps xmm9, xmmword [rsp + 0x120]
setae r9b
test dl, dl
je 0x1400243fd
test cl, cl
je 0x1400243fd
mov eax, 0x10
jmp 0x140024404
mov eax, r12d
test dl, dl
je 0x14002440f
mov r8d, 0x120
test r10b, r10b
jne 0x140024415
mov r8d, pe_nt_image_headers64
test r9b, r9b
je 0x140024425
test cl, cl
je 0x140024425
mov edx, 0x40
jmp 0x14002442d
mov edx, r12d
test r9b, r9b
je 0x140024437
mov ecx, 0x80
test r10b, r10b
jne 0x14002443a
mov ecx, r12d
vmovss xmm0, dword [r13 + 0x90]
or eax, ecx
mov r9d, r11d
mov rcx, qword [r13 + 0x2e0]
or eax, edx
or eax, r8d
lea rdx, [rsp + 0x68]
mov dword [rsp + 0x28], eax
lea r8, [rsp + 0x70]
vmovss dword [rsp + 0x20], xmm0
call fcn.140035560
cmp byte [rbp + 0xc0], r12b
je 0x14002457e
movsxd rcx, dword [r13 + 0x130]
lea rdx, [0x14012b451]
mov rax, qword [r13 + 0x138]
lea r10, [0x14012d300]
mov r8b, 0x23
mov r9d, dword [rax + rcx*4 - 4]
not r9d
mov esi, r9d
cmp r8b, 0x23
jne 0x1400244b7
cmp byte [rdx], r8b
jne 0x1400244b7
cmp byte [rdx + 1], r8b
cmove esi, r9d
movzx ecx, sil
movzx eax, r8b
movzx r8d, byte [rdx]
xor rcx, rax
shr esi, 8
inc rdx
xor esi, dword [r10 + rcx*4]
test r8b, r8b
jne 0x1400244a4
mov rax, qword [r13]
not esi
cmp dword [rax + 0x418c], esi
jne 0x1400244f6
lea r8, str.COLLAPSE
mov edx, 0xb
mov ecx, esi
call fcn.14002a050
mov r8, rdi
lea rdx, [rsp + 0x50]
mov ecx, esi
call fcn.140043980
test al, al
je 0x140024515
lea rcx, str.WindowMenu
call fcn.140017f10
mov rax, qword [0x1402ed1d8]
mov ecx, dword [rax + 0x41a4]
test ecx, ecx
je 0x140024535
cmp ecx, dword [rax + 0x4af0]
jne 0x140024535
mov eax, dword [rbx + 0x18]
mov dword [rsp + 0x48], eax
mov ecx, 0x11000
call fcn.140008380
test al, al
je 0x14002457e
vmovss xmm0, dword [0x14013813c]
vcomiss xmm0, dword [r14 + 0x419c]
jae 0x14002457e
mov rax, qword [0x1402ed1d8]
lea rdx, str.Missing_Text
mov rcx, qword [rax + 0x6248]
test rcx, rcx
cmovne rdx, rcx
lea rcx, [0x14012ca64]
call fcn.140017d80
mov r15d, dword [rbx]
lea ecx, [r15 - 1]
test ecx, ecx
js 0x1400245b4
movsxd rax, ecx
imul rdx, rax, 0x38
mov r8, qword [rbx + 8]
mov eax, dword [r8 + rdx + 4]
bt eax, 0x16
jae 0x1400245b4
btr eax, 0x16
mov r15d, ecx
mov dword [r8 + rdx + 4], eax
sub rdx, 0x38
sub ecx, 1
jns 0x140024590
mov r8d, dword [rbx]
cmp r8d, r15d
jle 0x1400246ee
test dword [r14 + 0x6294], 0x100
je 0x1400245f7
mov edx, dword [rdi]
lea eax, [r15 + 1]
cmp r8d, eax
lea rcx, str.__will_sort_
lea r9, [0x14012b487]
cmovg r9, rcx
sub r8d, r15d
lea rcx, str._docking__In_node_0x_08X:__d_new_appearing_tabs:_s_n
call fcn.140029bd0
mov ecx, r15d
mov dword [rbp + 0xc0], ecx
cmp r15d, dword [rbx]
jge 0x140024681
movsxd rax, r15d
imul rsi, rax, 0x38
test dword [r14 + 0x6294], 0x100
mov rdx, qword [rbx + 8]
je 0x140024671
mov rax, qword [rsi + rdx + 8]
test rax, rax
je 0x140024639
mov r8, qword [rax + 8]
movsx r9d, word [rax + 0x43e]
jmp 0x14002465c
movsxd rax, dword [rsi + rdx + 0x28]
mov r9d, 0xffffffff
cmp eax, r9d
jne 0x140024652
lea r8, [0x14012be34]
jmp 0x14002465c
mov r8, rax
add r8, qword [rbx + 0x98]
mov edx, dword [rsi + rdx]
lea rcx, str._docking____Tab_0x_08X__s_Order__d_n
call fcn.140029bd0
mov ecx, dword [rbp + 0xc0]
inc ecx
add rsi, 0x38
mov dword [rbp + 0xc0], ecx
cmp ecx, dword [rbx]
jl 0x140024610
test dword [r14 + 0x6294], 0x100
je 0x1400246bb
mov rax, qword [r14 + 0x4d00]
test rax, rax
je 0x1400246a3
mov r8d, dword [rax + 0xb8]
jmp 0x1400246a9
mov r8d, 0xffffffff
mov edx, dword [rdi + 0xbc]
lea rcx, str._docking__SelectedTabId__0x_08X__NavWindow__TabId__0x_08X_n
call fcn.140029bd0
mov ecx, dword [rbx]
lea eax, [r15 + 1]
cmp ecx, eax
jle 0x1400246ee
sub ecx, r15d
movsxd rdx, ecx
cmp rdx, 1
jbe 0x1400246ee
movsxd rax, r15d
lea r9, [0x140023b00]
imul rcx, rax, 0x38
mov r8d, 0x38
add rcx, qword [rbx + 8]
call fcn.1400db0e0
mov rax, qword [r14 + 0x4d00]
test rax, rax
je 0x140024713
mov rax, qword [rax + 0x3c0]
cmp qword [rax + 0x458], rdi
jne 0x140024713
mov eax, dword [rax + 0xb8]
mov dword [rbx + 0x18], eax
cmp qword [rsp + 0x38], r12
jne 0x140024746
mov edx, dword [rdi + 0xbc]
test edx, edx
je 0x140024746
mov r8d, dword [rbx]
mov eax, r12d
test r8d, r8d
jle 0x140024746
mov rcx, qword [rbx + 8]
cmp dword [rcx], edx
je 0x140024d14
inc eax
add rcx, 0x38
cmp eax, r8d
jl 0x140024733
movsxd rax, dword [rbx]
cmp eax, dword [rsp + 0x4c]
jle 0x140024768
imul rcx, rax, 0x38
mov rax, qword [rbx + 8]
mov rcx, qword [rcx + rax - 0x30]
mov eax, dword [rcx + 0xb8]
mov dword [rbx + 0x1c], eax
mov dword [rbx + 0x18], eax
mov r15d, 0x500003
cmp byte [r13 + 0xf6], r12b
jne 0x140024787
cmp byte [rbp + 0xb0], r12b
mov eax, 0x700003
cmovne r15d, eax
mov rax, qword [0x1402ed1d8]
lea rdx, [0x14012cb19]
mov r8b, 0x23
mov r10, qword [rax + 0x4140]
movsxd rcx, dword [r10 + 0x130]
mov rax, qword [r10 + 0x138]
mov r9d, dword [rax + rcx*4 - 4]
not r9d
mov esi, r9d
cmp r8b, 0x23
jne 0x1400247cb
cmp byte [rdx], r8b
jne 0x1400247cb
cmp byte [rdx + 1], r8b
cmove esi, r9d
movzx ecx, sil
movzx eax, r8b
movzx r8d, byte [rdx]
xor rcx, rax
shr esi, 8
lea rax, [0x14012d300]
inc rdx
xor esi, dword [rax + rcx*4]
test r8b, r8b
jne 0x1400247b8
mov rax, qword [r10]
not esi
cmp dword [rax + 0x418c], esi
jne 0x14002480f
lea r8, str.TabBar
mov edx, 0xb
mov ecx, esi
call fcn.14002a050
mov dword [rbx + 0x14], esi
lea rdx, [rbp - 0x60]
vmovss xmm0, dword [rdi + 0x48]
vaddss xmm1, xmm0, dword [r13 + 0x94]
vmovss dword [rbx + 0x64], xmm1
vmovss xmm2, dword [rdi + 0x50]
vaddss xmm0, xmm2, dword [rdi + 0x48]
vsubss xmm1, xmm0, dword [r13 + 0x94]
mov r8d, r15d
mov rcx, rbx
vmovss dword [rbx + 0x68], xmm1
call fcn.140053850
vmovups ymm0, ymmword [r14 + 0x3cf0]
vmovups xmm1, xmmword [r14 + 0x3ae0]
vmovups ymmword [rbp - 0x30], ymm0
vmovups ymm0, ymmword [r14 + 0x3d10]
vmovups ymmword [rbp - 0x10], ymm0
vmovups xmm0, xmmword [r14 + 0x3d30]
vmovups xmmword [rbp + 0x10], xmm0
vmovups xmmword [rbp - 0x40], xmm1
mov qword [rdi + 0x90], r12
mov dword [rsp + 0x4c], r12d
cmp dword [rdi + 0x30], r12d
jle 0x140024c86
vmovss xmm6, dword [0x1401380bc]
mov rsi, r12
mov qword [rsp + 0x50], r12
nop word [rax + rax]
mov rax, qword [rdi + 0x38]
mov r15, qword [rsi + rax]
lea rsi, [r15 + 0xb8]
cmp byte [rbp + 0xc8], r12b
jne 0x1400248d0
mov eax, dword [rsp + 0x60]
cmp eax, dword [rsi]
jne 0x1400248e7
cmp byte [r15 + 0xfd], r12b
je 0x1400248e7
test dword [r15 + 0x14], 0x40000
je 0x140024c60
mov eax, dword [r15 + 0x2a0]
inc eax
cmp eax, dword [r14 + 0x4098]
jge 0x140024905
mov eax, dword [rbp - 0x78]
cmp dword [rbp - 0x74], eax
je 0x140024c60
mov ecx, dword [r15 + 0x440]
mov r8d, dword [r15 + 0x34]
mov edx, dword [rbx + 0x10]
or r8d, 1
test dword [r15 + 0x14], 0x40000
vxorps xmm0, xmm0, xmm0
cmove r8d, dword [r15 + 0x34]
movzx eax, cl
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
mov eax, ecx
shr eax, 8
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm3, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm3, 0x10
mov eax, ecx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm2, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm2, 0x20
mov eax, ecx
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm1, 0x30
vmovups xmmword [r14 + 0x3ae0], xmm4
mov ecx, dword [r15 + 0x444]
movzx eax, cl
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
mov eax, ecx
shr eax, 8
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm3, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm3, 0x10
mov eax, ecx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm2, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm2, 0x20
mov eax, ecx
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm1, 0x30
vmovups xmmword [r14 + 0x3cf0], xmm4
mov ecx, dword [r15 + 0x448]
movzx eax, cl
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
mov eax, ecx
shr eax, 8
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm3, xmm0, xmm6
mov eax, ecx
shr eax, 0x10
vxorps xmm0, xmm0, xmm0
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm2, xmm0, xmm6
shr ecx, 0x18
vxorps xmm0, xmm0, xmm0
mov eax, ecx
vcvtsi2ss xmm0, xmm0, rax
vinsertps xmm4, xmm4, xmm3, 0x10
vmulss xmm1, xmm0, xmm6
vinsertps xmm4, xmm4, xmm2, 0x20
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm1, 0x30
vmovups xmmword [r14 + 0x3d00], xmm4
mov ecx, dword [r15 + 0x44c]
movzx eax, cl
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
mov eax, ecx
shr eax, 8
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm3, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm3, 0x10
mov eax, ecx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm2, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm2, 0x20
mov eax, ecx
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm1, 0x30
vmovups xmmword [r14 + 0x3d10], xmm4
mov ecx, dword [r15 + 0x450]
movzx eax, cl
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
mov eax, ecx
shr eax, 8
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm3, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm3, 0x10
mov eax, ecx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm2, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm2, 0x20
mov eax, ecx
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
vinsertps xmm4, xmm4, xmm1, 0x30
vmovups xmmword [r14 + 0x3d20], xmm4
mov ecx, dword [r15 + 0x454]
movzx eax, cl
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm4, xmm0, xmm6
vxorps xmm0, xmm0, xmm0
mov eax, ecx
shr eax, 8
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm3, xmm0, xmm6
mov eax, ecx
shr eax, 0x10
vxorps xmm0, xmm0, xmm0
movzx eax, al
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm2, xmm0, xmm6
vinsertps xmm4, xmm4, xmm3, 0x10
shr ecx, 0x18
vxorps xmm0, xmm0, xmm0
mov eax, ecx
vcvtsi2ss xmm0, xmm0, rax
vmulss xmm1, xmm0, xmm6
vinsertps xmm4, xmm4, xmm2, 0x20
vinsertps xmm4, xmm4, xmm1, 0x30
vmovups xmmword [rsp + 0x38], xmm4
vmovups xmmword [r14 + 0x3d30], xmm4
mov r9d, r8d
mov byte [rbp + 0xc0], 1
or r9d, 4
mov qword [rsp + 0x20], r15
test dl, 8
mov rcx, rbx
mov rdx, qword [r15 + 8]
cmove r9d, r8d
cmp byte [r15 + 0xfd], r12b
lea r8, [rbp + 0xc0]
cmove r8, r12
vzeroupper
call fcn.1400554f0
cmp byte [rbp + 0xc0], r12b
jne 0x140024c0a
lea rsi, [r15 + 0xb8]
mov eax, dword [rsi]
mov dword [rdi + 0xc0], eax
mov eax, dword [rsi]
cmp dword [rbx + 0x20], eax
jne 0x140024c18
mov qword [rdi + 0x90], r15
mov eax, dword [r14 + 0x4af8]
mov dword [r15 + 0x46c], eax
vmovups xmm0, xmmword [r14 + 0x4afc]
vmovups xmmword [r15 + 0x470], xmm0
mov rax, qword [r14 + 0x4d00]
test rax, rax
je 0x140024c60
cmp qword [rax + 0x3c0], r15
jne 0x140024c60
test byte [r15 + 0x19c], 2
jne 0x140024c60
mov eax, dword [rsi]
mov dword [r13 + 0x3fc], eax
mov eax, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x50]
inc eax
add rsi, 8
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x50], rsi
cmp eax, dword [rdi + 0x30]
jl 0x1400248b0
vmovups xmm1, xmmword [rbp - 0x40]
vmovups ymm0, ymmword [rbp - 0x30]
vmovaps xmm6, xmmword [rsp + 0x150]
vmovups xmmword [r14 + 0x3ae0], xmm1
vmovups ymmword [r14 + 0x3cf0], ymm0
vmovups ymm0, ymmword [rbp - 0x10]
vmovups ymmword [r14 + 0x3d10], ymm0
vmovups xmm0, xmmword [rbp + 0x10]
vmovups xmmword [r14 + 0x3d30], xmm0
mov rcx, qword [rdi + 0x90]
test rcx, rcx
je 0x140024cec
mov rax, qword [rsp + 0x78]
cmp byte [rbp + 0xb0], r12b
jne 0x140024ce5
cmp qword [rax + 0x90], r12
jne 0x140024cec
mov qword [rax + 0x90], rcx
movzx eax, byte [rdi + 0xcc]
and al, 8
je 0x140024d2f
mov rcx, qword [rdi + 0x90]
test rcx, rcx
je 0x140024d2f
cmp byte [rcx + 0xfd], r12b
je 0x140024d2f
mov r15b, 1
jmp 0x140024e2e
cdqe
imul rcx, rax, 0x38
add rcx, qword [rbx + 8]
je 0x140024746
mov dword [rbx + 0x1c], edx
mov dword [rbx + 0x18], edx
jmp 0x140024768
test al, al
je 0x140024f7d
mov rsi, qword [0x1402ed1d8]
mov eax, dword [rsi + 0x4ac4]
lea r15, [rsi + 0x4c28]
or eax, 4
mov dword [rsi + 0x4ac4], eax
mov ecx, dword [r15 + 4]
mov r8d, dword [r15]
mov dword [rbp + 0xb0], eax
cmp r8d, ecx
jne 0x140024d99
inc r8d
test ecx, ecx
je 0x140024d78
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x140024d7d
mov eax, 8
cmp eax, r8d
mov rcx, r15
cmovg r8d, eax
mov edx, r8d
vzeroupper
call fcn.14002b2a0
mov rsi, qword [0x1402ed1d8]
movsxd rcx, dword [r15]
mov edx, dword [rbp + 0xb0]
mov rax, qword [r15 + 8]
mov dword [rbp - 0x60], r12d
mov dword [rax + rcx*4], edx
lea rcx, [rsi + 0x4be8]
inc dword [r15]
lea rdx, [rbp - 0x60]
vmovss xmm0, dword [r14 + 0x3ae0]
vmovss xmm1, dword [r14 + 0x3ae4]
vmovss dword [rsp + 0x38], xmm0
vmovss xmm0, dword [r14 + 0x3ae8]
vmovss dword [rsp + 0x40], xmm0
vmovss dword [rsp + 0x3c], xmm1
vmovss xmm1, dword [r14 + 0x3aec]
vmulss xmm0, xmm1, dword [0x140138128]
vmovss dword [rsp + 0x44], xmm0
vmovups xmm0, xmmword [rsi + 0x3ae0]
vmovups xmmword [rbp - 0x5c], xmm0
vzeroupper
call fcn.14002ab10
xor r15b, r15b
cmp dword [rsi + 0x4be4], r12d
je 0x140024e2e
vmovups xmm0, xmmword [rsp + 0x38]
vmovups xmmword [rsi + 0x3ae0], xmm0
movsxd rcx, dword [r13 + 0x130]
lea rdx, [0x14012b7e9]
mov rax, qword [r13 + 0x138]
mov r8b, 0x23
mov r9d, dword [rax + rcx*4 - 4]
not r9d
mov esi, r9d
cmp r8b, 0x23
jne 0x140024e64
cmp byte [rdx], r8b
jne 0x140024e64
cmp byte [rdx + 1], r8b
cmove esi, r9d
movzx ecx, sil
movzx eax, r8b
movzx r8d, byte [rdx]
xor rcx, rax
shr esi, 8
lea rax, [0x14012d300]
inc rdx
xor esi, dword [rax + rcx*4]
test r8b, r8b
jne 0x140024e51
mov rax, qword [r13]
not esi
cmp dword [rax + 0x418c], esi
jne 0x140024eac
lea r8, str.CLOSE
mov edx, 0xb
mov ecx, esi
vzeroupper
call fcn.14002a050
lea rdx, [rbp - 0x80]
mov ecx, esi
vzeroupper
call fcn.140043630
test al, al
je 0x140024f14
or byte [rdi + 0xcc], 0x40
mov r8d, r12d
cmp dword [rbx], r12d
jle 0x140024f14
mov rcx, r12
mov rdx, qword [rbx + 8]
mov eax, dword [rcx + rdx + 4]
bt eax, 0x15
jb 0x140024f08
test eax, 0x101
mov eax, dword [rcx + rdx]
jne 0x140024f00
mov byte [rcx + rdx + 0x30], 1
cmp dword [rbx + 0x20], eax
jne 0x140024f08
mov dword [rcx + rdx + 0x10], 0xffffffff
mov qword [rbx + 0x18], r12
jmp 0x140024f08
cmp dword [rbx + 0x20], eax
je 0x140024f08
mov dword [rbx + 0x1c], eax
inc r8d
add rcx, 0x38
cmp r8d, dword [rbx]
jl 0x140024ed0
test r15b, r15b
jne 0x140024f7d
mov r9, qword [0x1402ed1d8]
movsxd rax, dword [r9 + 0x4be8]
cmp eax, 1
jl 0x140024f58
mov rcx, qword [r9 + 0x4bf0]
lea rdx, [rax + rax*4]
movsxd rax, dword [rcx + rdx*4 - 0x14]
vmovups xmm0, xmmword [rcx + rdx*4 - 0x10]
add rax, 0x3ae
add rax, rax
vmovups xmmword [r9 + rax*8], xmm0
dec dword [r9 + 0x4be8]
movsxd rcx, dword [r9 + 0x4c28]
lea eax, [rcx - 1]
mov dword [r9 + 0x4c28], eax
mov rax, qword [r9 + 0x4c30]
mov ecx, dword [rax + rcx*4 - 8]
mov dword [r9 + 0x4ac4], ecx
jmp 0x140024f84
mov r9, qword [0x1402ed1d8]
movsxd rcx, dword [r13 + 0x130]
lea r8, [0x14012cb21]
mov rax, qword [r13 + 0x138]
mov dl, 0x23
mov r10d, dword [rax + rcx*4 - 4]
not r10d
mov esi, r10d
cmp dl, 0x23
jne 0x140024fb8
cmp byte [r8], dl
jne 0x140024fb8
cmp byte [r8 + 1], dl
cmove esi, r10d
movzx ecx, sil
movzx eax, dl
movzx edx, byte [r8]
xor rcx, rax
shr esi, 8
lea rax, [0x14012d300]
inc r8
xor esi, dword [rax + rcx*4]
test dl, dl
jne 0x140024fa6
mov rax, qword [r13]
not esi
cmp dword [rax + 0x418c], esi
jne 0x140025005
lea r8, str.TITLEBAR
mov edx, 0xb
mov ecx, esi
vzeroupper
call fcn.14002a050
mov r9, qword [0x1402ed1d8]
mov eax, dword [r14 + 0x4190]
test eax, eax
je 0x140025021
cmp eax, esi
je 0x140025021
cmp dword [r14 + 0x41a4], esi
jne 0x1400250e8
cmp dword [r9 + 0x41a4], esi
jne 0x140025031
mov dword [r9 + 0x41a8], esi
cmp dword [r9 + 0x41d4], esi
jne 0x140025042
mov byte [r9 + 0x41d8], 1
mov dword [rsp + 0x20], 0x1000
lea r9, [rbp + 0xb0]
xor r8d, r8d
lea rcx, [rsp + 0x68]
mov edx, esi
vzeroupper
call fcn.140042810
cmp dword [r14 + 0x4190], esi
jne 0x140025073
mov dword [r14 + 0x4af0], esi
cmp byte [rbp + 0xb0], r12b
je 0x1400250e8
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140014990
test al, al
je 0x140025093
mov eax, dword [rbx + 0x18]
mov dword [rsp + 0x48], eax
mov edx, dword [rbx + 0x18]
test edx, edx
je 0x1400250e8
mov r8d, dword [rbx]
mov eax, r12d
test r8d, r8d
jle 0x1400250e8
mov rcx, qword [rbx + 8]
nop dword [rax]
cmp dword [rcx], edx
je 0x1400250c1
inc eax
add rcx, 0x38
cmp eax, r8d
jl 0x1400250b0
jmp 0x1400250e8
cdqe
imul rcx, rax, 0x38
add rcx, qword [rbx + 8]
je 0x1400250e8
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x1400250dd
mov rcx, qword [rdi + 0x88]
xor r8d, r8d
mov rdx, rdi
call fcn.140008ad0
mov edx, dword [rbx + 0x1c]
test edx, edx
cmove edx, dword [rsp + 0x48]
test edx, edx
je 0x140025140
mov r8d, dword [rbx]
mov eax, r12d
test r8d, r8d
jle 0x140025140
mov rcx, qword [rbx + 8]
cmp dword [rcx], edx
je 0x140025116
inc eax
add rcx, 0x38
cmp eax, r8d
jl 0x140025105
jmp 0x140025140
cdqe
imul rsi, rax, 0x38
add rsi, qword [rbx + 8]
je 0x140025140
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x140025140
xor edx, edx
vzeroupper
call fcn.140012cf0
mov rcx, qword [rsi + 8]
xor edx, edx
call fcn.140019cb0
vzeroupper
call fcn.140053be0
mov rax, qword [0x1402ed1d8]
mov rsi, qword [rsp + 0x170]
mov rbx, qword [rsp + 0x178]
mov rcx, qword [rax + 0x4140]
dec dword [rcx + 0x130]
mov eax, dword [rdi + 0x10]
shr eax, 0xa
test al, 1
jne 0x1400251fd
movzx eax, byte [rsp + 0x30]
mov byte [r13 + 0xf8], al
mov dword [r13 + 0x198], r12d
jmp 0x1400251fd
cmp dword [rdi + 0x30], r12d
jle 0x14002519c
mov rax, qword [rdi + 0x38]
mov r12, qword [rax]
and r8b, 0xfd
mov qword [rdi + 0x90], r12
movzx eax, r15b
add al, al
or r8b, al
mov byte [rdi + 0xcc], r8b
test r15b, r15b
je 0x1400251c9
mov eax, dword [r14 + 0x4098]
mov dword [rdi + 0xb4], eax
test r12, r12
je 0x1400251fd
test r15b, r15b
jne 0x1400251dd
cmp qword [rdx + 0x90], 0
jne 0x1400251e4
mov qword [rdx + 0x90], r12
mov rdx, qword [rdi + 0x40]
test rdx, rdx
je 0x1400251fd
mov rax, qword [rdi + 0x90]
mov ecx, dword [rax + 0xb8]
mov dword [rdx + 0x20], ecx
mov r15, qword [rsp + 0x168]
add rsp, 0x180
pop r14
pop r13
pop r12
pop rdi
pop rbp
ret