Function at 0x6514ca30
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xe4
push ebx
mov ebx, ecx
push esi
push edi
mov dword [esp + 0x38], ebx
mov esi, dword [ebx + 4]
mov byte [ebx + 0x120], 0
mov dword [esp + 0x50], esi
mov eax, dword [esi + 0x14]
mov ecx, dword [eax + 0x18]
sub ecx, dword [eax + 0x10]
mov dword [esp + 0x48], ecx
mov ecx, dword [eax + 0x1c]
sub ecx, dword [eax + 0x14]
mov eax, dword [ebx + 0x11c]
mov dword [esp + 0x54], ecx
cmp eax, 2
je 0x6514ca89
cmp eax, 3
je 0x6514ca89
cmp eax, 6
je 0x6514ca89
mov byte [esp + 0x1f], 0
cmp eax, 7
jne 0x6514ca8e
mov byte [esp + 0x1f], 1
mov ecx, esi
call sym.Qt5Widgets.dll_public:_class_QStyle____thiscall_QWidget::style_void_const
push 0
push esi
push 0
mov ecx, dword [eax]
push 5
mov edx, dword [ecx + 0x74]
mov ecx, eax
call edx
lea esi, [ebx + 0x128]
mov edi, eax
mov eax, dword [esi]
mov ebx, dword [0x652b242c]
mov dword [esp + 0x5c], edi
mov dword [esp + 0x44], esi
mov ecx, dword [eax + 0xc]
sub ecx, dword [eax + 8]
add ecx, 2
mov dword [esp + 0x28], ecx
test ecx, ecx
jle 0x6514cb0d
push 0
push ecx
push 4
push 0x20
call ebx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x28], eax
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea esi, [ecx + eax]
sub edx, esi
add edx, ecx
add edx, eax
and edx, 0xffffffe0
push edx
push 0
push esi
call fcn.652afdc5
mov esi, dword [esp + 0x60]
add esp, 0x1c
jmp 0x6514cb17
call dword [0x652b2424]
mov dword [esp + 0x18], eax
push 0
lea ecx, [esp + 0x1c]
call fcn.6501f010
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0x7ffff
mov word [eax + 0x14], 0x100
mov dword [eax + 0x10], 0
mov eax, dword [esp + 0x38]
cmp byte [eax + 0x15b], 0
jne 0x6514cb66
cmp edi, 1
je 0x6514cb66
mov byte [esp + 0x1e], 1
cmp edi, 8
jne 0x6514cb6b
mov byte [esp + 0x1e], 0
push 0
lea ecx, [esp + 0x1c]
call fcn.6501f010
mov cl, byte [esp + 0x1e]
push 0
mov byte [eax + 0x14], cl
lea ecx, [esp + 0x1c]
call fcn.6501f010
mov dword [esp + 0x30], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
mov byte [eax + 0x15], 1
mov eax, 1
mov ecx, dword [esi]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x20], 0
mov edx, dword [ecx + 0xc]
sub edx, dword [ecx + 8]
cmp byte [esp + 0x1f], 0
jne 0x6514d22d
test edx, edx
jle 0x6514d224
mov dword [esp + 0x24], 0x20
mov edx, ecx
xor edi, edi
nop dword [eax]
mov eax, dword [ecx + 8]
add eax, dword [esp + 0x20]
mov eax, dword [ecx + eax*4 + 0x10]
cmp byte [eax + 1], 0
je 0x6514d202
mov ecx, dword [esp + 0x50]
lea edx, [esp + 0x54]
push dword [esp + 0x20]
push edx
mov eax, dword [ecx]
call dword [eax + 0xb4]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x54]
mov dword [esp + 0x70], ecx
dec ecx
add eax, ecx
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], eax
mov ecx, esi
mov eax, dword [esp + 0x58]
dec eax
mov dword [esp + 0x7c], eax
call fcn.6514b760
mov ecx, dword [esi]
lea edx, [esp + 0xa8]
movups xmm0, xmmword [esp + 0x70]
mov eax, dword [ecx + 8]
add eax, dword [esp + 0x20]
mov eax, dword [ecx + eax*4 + 0x10]
mov ecx, dword [esp + 0x50]
movups xmmword [eax + 0x38], xmm0
mov eax, dword [esp + 0x28]
add eax, dword [esp + 0x54]
cmp edi, dword [esp + 0x58]
mov dword [esp + 0x28], eax
cmovl edi, dword [esp + 0x58]
mov eax, dword [ecx]
mov dword [esp + 0x34], edi
mov edi, dword [esp + 0x20]
push edi
push edx
call dword [eax + 0xb8]
mov dword [esp + 0x84], 0
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x80], eax
dec eax
mov dword [esp + 0x58], edx
add eax, ecx
mov dword [esp + 0x54], ecx
dec edx
mov ecx, esi
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edx
call fcn.6514b760
mov ecx, dword [esi]
movups xmm0, xmmword [esp + 0x80]
mov eax, dword [ecx + 8]
add eax, edi
mov eax, dword [ecx + eax*4 + 0x10]
movups xmmword [eax + 0x28], xmm0
mov eax, dword [esp + 0x30]
add eax, dword [esp + 0x54]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
cmp eax, 1
je 0x6514cdb7
test eax, eax
je 0x6514cdb7
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
and ecx, 0x7fffffff
jne 0x6514cd19
push 2
push ecx
push 4
push 0x20
call ebx
mov esi, eax
add esp, 0x10
mov dword [esp + 0x18], esi
jmp 0x6514cdbb
mov eax, dword [eax]
mov dword [esp + 0x3c], 0
push dword [esp + 0x3c]
push ecx
push 4
push 0x20
call ebx
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea ebx, [ecx + eax]
sub edx, ebx
add edx, ecx
add edx, eax
mov eax, dword [esi + 0xc]
and edx, 0xffffffe0
add eax, esi
push edx
push ebx
push eax
call fcn.652afd9b
mov eax, dword [esp + 0x34]
add esp, 0x1c
mov ecx, dword [eax + 8]
xor ecx, dword [esi + 8]
and ecx, 0x7fffffff
xor ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514cd9a
cmp eax, 0xffffffff
je 0x6514cdab
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514cdab
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
mov ebx, dword [0x652b242c]
mov dword [esp + 0x18], esi
jmp 0x6514cdbb
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0xc]
add eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x44]
add eax, esi
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0x7ffff
mov word [eax + 0x14], 0x100
mov dword [eax + 0x10], 0
mov ecx, dword [ecx]
mov eax, dword [ecx + 8]
add eax, edi
mov eax, dword [ecx + eax*4 + 0x10]
mov edi, dword [eax + 0x40]
sub edi, dword [eax + 0x38]
mov eax, dword [esp + 0x18]
inc edi
mov eax, dword [eax]
cmp eax, 1
je 0x6514ced7
test eax, eax
je 0x6514ced7
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
and ecx, 0x7fffffff
jne 0x6514ce3f
push 2
push ecx
push 4
push 0x20
call ebx
mov esi, eax
add esp, 0x10
mov dword [esp + 0x18], esi
jmp 0x6514cedb
mov eax, dword [eax]
mov dword [esp + 0x3c], 0
push dword [esp + 0x3c]
push ecx
push 4
push 0x20
call ebx
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea ebx, [ecx + eax]
sub edx, ebx
add edx, ecx
add edx, eax
mov eax, dword [esi + 0xc]
and edx, 0xffffffe0
add eax, esi
push edx
push ebx
push eax
call fcn.652afd9b
mov eax, dword [esp + 0x34]
add esp, 0x1c
mov ecx, dword [eax + 8]
xor ecx, dword [esi + 8]
and ecx, 0x7fffffff
xor ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514cec0
cmp eax, 0xffffffff
je 0x6514ced1
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514ced1
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
mov dword [esp + 0x18], esi
jmp 0x6514cedb
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0xc]
add eax, dword [esp + 0x24]
mov dword [eax + esi + 4], edi
mov eax, dword [esp + 0x54]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
cmp eax, 1
je 0x6514cfce
test eax, eax
je 0x6514cfce
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
and ecx, 0x7fffffff
jne 0x6514cf31
mov ebx, dword [0x652b242c]
push 2
push ecx
push 4
push 0x20
call ebx
mov esi, eax
add esp, 0x10
mov dword [esp + 0x18], esi
jmp 0x6514cfd8
mov eax, dword [eax]
mov eax, dword [0x652b242c]
mov dword [esp + 0x3c], 0
push dword [esp + 0x3c]
push ecx
push 4
push 0x20
call eax
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea ebx, [ecx + eax]
sub edx, ebx
add edx, ecx
add edx, eax
mov eax, dword [esi + 0xc]
and edx, 0xffffffe0
add eax, esi
push edx
push ebx
push eax
call fcn.652afd9b
mov eax, dword [esp + 0x34]
add esp, 0x1c
mov ecx, dword [eax + 8]
xor ecx, dword [esi + 8]
and ecx, 0x7fffffff
xor ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514cfb7
cmp eax, 0xffffffff
je 0x6514cfc8
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514cfc8
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
mov dword [esp + 0x18], esi
jmp 0x6514cfd2
mov esi, dword [esp + 0x18]
mov ebx, dword [0x652b242c]
mov eax, dword [esi + 0xc]
mov edi, dword [esp + 0x24]
add eax, edi
mov ecx, dword [esp + 0x40]
mov dword [eax + esi + 0xc], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
cmp eax, 1
je 0x6514d0be
test eax, eax
je 0x6514d0be
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
and ecx, 0x7fffffff
jne 0x6514d026
push 2
push ecx
push 4
push 0x20
call ebx
mov esi, eax
add esp, 0x10
mov dword [esp + 0x18], esi
jmp 0x6514d0c2
mov eax, dword [eax]
mov dword [esp + 0x40], 0
push dword [esp + 0x40]
push ecx
push 4
push 0x20
call ebx
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea ebx, [ecx + eax]
sub edx, ebx
add edx, ecx
add edx, eax
mov eax, dword [esi + 0xc]
and edx, 0xffffffe0
add eax, esi
push edx
push ebx
push eax
call fcn.652afd9b
mov eax, dword [esp + 0x34]
add esp, 0x1c
mov ecx, dword [eax + 8]
xor ecx, dword [esi + 8]
and ecx, 0x7fffffff
xor ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514d0a7
cmp eax, 0xffffffff
je 0x6514d0b8
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514d0b8
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
mov dword [esp + 0x18], esi
jmp 0x6514d0c2
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0xc]
add eax, edi
mov byte [eax + esi + 0x15], 0
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
cmp eax, 1
je 0x6514d1ac
test eax, eax
je 0x6514d1ac
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
and ecx, 0x7fffffff
jne 0x6514d10f
mov ebx, dword [0x652b242c]
push 2
push ecx
push 4
push 0x20
call ebx
mov esi, eax
add esp, 0x10
mov dword [esp + 0x18], esi
jmp 0x6514d1b6
mov eax, dword [eax]
mov eax, dword [0x652b242c]
mov dword [esp + 0x40], 0
push dword [esp + 0x40]
push ecx
push 4
push 0x20
call eax
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea ebx, [ecx + eax]
sub edx, ebx
add edx, ecx
add edx, eax
mov eax, dword [esi + 0xc]
and edx, 0xffffffe0
add eax, esi
push edx
push ebx
push eax
call fcn.652afd9b
mov eax, dword [esp + 0x34]
add esp, 0x1c
mov ecx, dword [eax + 8]
xor ecx, dword [esi + 8]
and ecx, 0x7fffffff
xor ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514d195
cmp eax, 0xffffffff
je 0x6514d1a6
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514d1a6
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
mov dword [esp + 0x18], esi
jmp 0x6514d1b0
mov esi, dword [esp + 0x18]
mov ebx, dword [0x652b242c]
mov eax, dword [esi + 0xc]
add eax, edi
mov byte [eax + esi + 0x14], 1
mov eax, dword [esp + 0x38]
cmp byte [eax + 0x15b], 0
jne 0x6514d1ed
push dword [esp + 0x2c]
lea ecx, [esp + 0x1c]
call fcn.6501f010
push dword [esp + 0x2c]
lea ecx, [esp + 0x1c]
mov esi, dword [eax + 4]
call fcn.6501f010
mov dword [eax + 8], esi
mov esi, dword [esp + 0x44]
inc dword [esp + 0x2c]
add edi, 0x20
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x34]
mov edx, dword [esi]
inc dword [esp + 0x20]
mov ecx, edx
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
cmp dword [esp + 0x20], eax
jl 0x6514cbe0
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x5c]
mov ecx, dword [esp + 0x48]
jmp 0x6514d893
test edx, edx
jle 0x6514d88b
mov dword [esp + 0x24], 0x20
mov edx, ecx
xor edi, edi
mov eax, dword [ecx + 8]
add eax, dword [esp + 0x20]
mov eax, dword [ecx + eax*4 + 0x10]
cmp byte [eax + 1], 0
je 0x6514d869
mov ecx, dword [esp + 0x50]
lea edx, [esp + 0x48]
push dword [esp + 0x20]
push edx
mov eax, dword [ecx]
call dword [eax + 0xb4]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x28]
dec eax
mov dword [esp + 0x84], ecx
dec ecx
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x4c]
add eax, ecx
mov dword [esp + 0x80], 0
mov ecx, esi
mov dword [esp + 0x8c], eax
call fcn.6514b760
mov ecx, dword [esi]
lea edx, [esp + 0xa8]
movups xmm0, xmmword [esp + 0x80]
mov eax, dword [ecx + 8]
add eax, dword [esp + 0x20]
mov eax, dword [ecx + eax*4 + 0x10]
mov ecx, dword [esp + 0x50]
movups xmmword [eax + 0x38], xmm0
mov eax, dword [esp + 0x28]
add eax, dword [esp + 0x4c]
cmp edi, dword [esp + 0x48]
mov dword [esp + 0x28], eax
cmovl edi, dword [esp + 0x48]
mov eax, dword [ecx]
mov dword [esp + 0x3c], edi
mov edi, dword [esp + 0x20]
push edi
push edx
call dword [eax + 0xb8]
mov dword [esp + 0x70], 0
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x74], eax
lea eax, [ecx - 1]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x78], eax
mov ecx, esi
mov eax, dword [esp + 0x30]
dec eax
mov dword [esp + 0x4c], edx
add eax, edx
mov dword [esp + 0x7c], eax
call fcn.6514b760
mov ecx, dword [esi]
movups xmm0, xmmword [esp + 0x70]
mov eax, dword [ecx + 8]
add eax, edi
mov eax, dword [ecx + eax*4 + 0x10]
movups xmmword [eax + 0x28], xmm0
mov eax, dword [esp + 0x30]
add eax, dword [esp + 0x4c]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
cmp eax, 1
je 0x6514d41e
test eax, eax
je 0x6514d41e
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
and ecx, 0x7fffffff
jne 0x6514d380
push 2
push ecx
push 4
push 0x20
call ebx
mov esi, eax
add esp, 0x10
mov dword [esp + 0x18], esi
jmp 0x6514d422
mov eax, dword [eax]
mov dword [esp + 0x34], 0
push dword [esp + 0x34]
push ecx
push 4
push 0x20
call ebx
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea ebx, [ecx + eax]
sub edx, ebx
add edx, ecx
add edx, eax
mov eax, dword [esi + 0xc]
and edx, 0xffffffe0
add eax, esi
push edx
push ebx
push eax
call fcn.652afd9b
mov eax, dword [esp + 0x34]
add esp, 0x1c
mov ecx, dword [eax + 8]
xor ecx, dword [esi + 8]
and ecx, 0x7fffffff
xor ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514d401
cmp eax, 0xffffffff
je 0x6514d412
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514d412
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
mov ebx, dword [0x652b242c]
mov dword [esp + 0x18], esi
jmp 0x6514d422
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0xc]
add eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x44]
add eax, esi
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0x7ffff
mov word [eax + 0x14], 0x100
mov dword [eax + 0x10], 0
mov ecx, dword [ecx]
mov eax, dword [ecx + 8]
add eax, edi
mov eax, dword [ecx + eax*4 + 0x10]
mov edi, dword [eax + 0x44]
sub edi, dword [eax + 0x3c]
mov eax, dword [esp + 0x18]
inc edi
mov eax, dword [eax]
cmp eax, 1
je 0x6514d53e
test eax, eax
je 0x6514d53e
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
and ecx, 0x7fffffff
jne 0x6514d4a6
push 2
push ecx
push 4
push 0x20
call ebx
mov esi, eax
add esp, 0x10
mov dword [esp + 0x18], esi
jmp 0x6514d542
mov eax, dword [eax]
mov dword [esp + 0x34], 0
push dword [esp + 0x34]
push ecx
push 4
push 0x20
call ebx
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea ebx, [ecx + eax]
sub edx, ebx
add edx, ecx
add edx, eax
mov eax, dword [esi + 0xc]
and edx, 0xffffffe0
add eax, esi
push edx
push ebx
push eax
call fcn.652afd9b
mov eax, dword [esp + 0x34]
add esp, 0x1c
mov ecx, dword [eax + 8]
xor ecx, dword [esi + 8]
and ecx, 0x7fffffff
xor ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514d527
cmp eax, 0xffffffff
je 0x6514d538
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514d538
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
mov dword [esp + 0x18], esi
jmp 0x6514d542
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0xc]
add eax, dword [esp + 0x24]
mov dword [eax + esi + 4], edi
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
cmp eax, 1
je 0x6514d635
test eax, eax
je 0x6514d635
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
and ecx, 0x7fffffff
jne 0x6514d598
mov ebx, dword [0x652b242c]
push 2
push ecx
push 4
push 0x20
call ebx
mov esi, eax
add esp, 0x10
mov dword [esp + 0x18], esi
jmp 0x6514d63f
mov eax, dword [eax]
mov eax, dword [0x652b242c]
mov dword [esp + 0x34], 0
push dword [esp + 0x34]
push ecx
push 4
push 0x20
call eax
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea ebx, [ecx + eax]
sub edx, ebx
add edx, ecx
add edx, eax
mov eax, dword [esi + 0xc]
and edx, 0xffffffe0
add eax, esi
push edx
push ebx
push eax
call fcn.652afd9b
mov eax, dword [esp + 0x34]
add esp, 0x1c
mov ecx, dword [eax + 8]
xor ecx, dword [esi + 8]
and ecx, 0x7fffffff
xor ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514d61e
cmp eax, 0xffffffff
je 0x6514d62f
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514d62f
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
mov dword [esp + 0x18], esi
jmp 0x6514d639
mov esi, dword [esp + 0x18]
mov ebx, dword [0x652b242c]
mov eax, dword [esi + 0xc]
mov edi, dword [esp + 0x24]
add eax, edi
mov ecx, dword [esp + 0x40]
mov dword [eax + esi + 0xc], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
cmp eax, 1
je 0x6514d725
test eax, eax
je 0x6514d725
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
and ecx, 0x7fffffff
jne 0x6514d68d
push 2
push ecx
push 4
push 0x20
call ebx
mov esi, eax
add esp, 0x10
mov dword [esp + 0x18], esi
jmp 0x6514d729
mov eax, dword [eax]
mov dword [esp + 0x34], 0
push dword [esp + 0x34]
push ecx
push 4
push 0x20
call ebx
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea ebx, [ecx + eax]
sub edx, ebx
add edx, ecx
add edx, eax
mov eax, dword [esi + 0xc]
and edx, 0xffffffe0
add eax, esi
push edx
push ebx
push eax
call fcn.652afd9b
mov eax, dword [esp + 0x34]
add esp, 0x1c
mov ecx, dword [eax + 8]
xor ecx, dword [esi + 8]
and ecx, 0x7fffffff
xor ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514d70e
cmp eax, 0xffffffff
je 0x6514d71f
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514d71f
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
mov dword [esp + 0x18], esi
jmp 0x6514d729
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0xc]
add eax, edi
mov byte [eax + esi + 0x15], 0
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
cmp eax, 1
je 0x6514d813
test eax, eax
je 0x6514d813
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
and ecx, 0x7fffffff
jne 0x6514d776
mov ebx, dword [0x652b242c]
push 2
push ecx
push 4
push 0x20
call ebx
mov esi, eax
add esp, 0x10
mov dword [esp + 0x18], esi
jmp 0x6514d81d
mov eax, dword [eax]
mov eax, dword [0x652b242c]
mov dword [esp + 0x34], 0
push dword [esp + 0x34]
push ecx
push 4
push 0x20
call eax
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 4]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
shl edx, 5
lea ebx, [ecx + eax]
sub edx, ebx
add edx, ecx
add edx, eax
mov eax, dword [esi + 0xc]
and edx, 0xffffffe0
add eax, esi
push edx
push ebx
push eax
call fcn.652afd9b
mov eax, dword [esp + 0x34]
add esp, 0x1c
mov ecx, dword [eax + 8]
xor ecx, dword [esi + 8]
and ecx, 0x7fffffff
xor ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514d7fc
cmp eax, 0xffffffff
je 0x6514d80d
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514d80d
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
mov dword [esp + 0x18], esi
jmp 0x6514d817
mov esi, dword [esp + 0x18]
mov ebx, dword [0x652b242c]
mov eax, dword [esi + 0xc]
add eax, edi
mov byte [eax + esi + 0x14], 1
mov eax, dword [esp + 0x38]
cmp byte [eax + 0x15b], 0
jne 0x6514d854
push dword [esp + 0x2c]
lea ecx, [esp + 0x1c]
call fcn.6501f010
push dword [esp + 0x2c]
lea ecx, [esp + 0x1c]
mov esi, dword [eax + 4]
call fcn.6501f010
mov dword [eax + 8], esi
mov esi, dword [esp + 0x44]
inc dword [esp + 0x2c]
add edi, 0x20
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x3c]
mov edx, dword [esi]
inc dword [esp + 0x20]
mov ecx, edx
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
cmp dword [esp + 0x20], eax
jl 0x6514d241
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x5c]
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x48], ecx
lea esi, [ecx + 1]
push eax
lea ecx, [esp + 0x1c]
call fcn.6501f010
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0x7ffff
mov word [eax + 0x14], 0x100
mov dword [eax + 0x10], 0
mov eax, dword [esp + 0x38]
cmp byte [eax + 0x15b], 0
jne 0x6514d8e4
cmp edi, 2
je 0x6514d8e4
mov byte [esp + 0x1e], 1
cmp edi, 8
jne 0x6514d8e9
mov byte [esp + 0x1e], 0
mov ebx, dword [esp + 0x2c]
lea ecx, [esp + 0x18]
push ebx
call fcn.6501f010
mov cl, byte [esp + 0x1e]
push ebx
mov byte [eax + 0x14], cl
lea ecx, [esp + 0x1c]
call fcn.6501f010
cmp esi, dword [esp + 0x30]
push 0
mov byte [eax + 0x15], 1
mov eax, esi
cmovl eax, dword [esp + 0x34]
push eax
mov eax, dword [esp + 0x20]
push 0
push dword [eax + 4]
lea eax, [esp + 0x28]
push 0
push eax
call sym.Qt5Widgets.dll_void___cdecl_qGeomCalc_class_QVector_struct_QLayoutStruct____int__int__int__int__int_
mov ebx, dword [esp + 0x5c]
xor edi, edi
add esp, 0x18
mov dword [esp + 0x28], edi
xor esi, esi
mov ecx, dword [ebx]
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
test eax, eax
jle 0x6514d9e5
nop
mov eax, dword [ecx + 8]
add eax, esi
mov eax, dword [ecx + eax*4 + 0x10]
cmp byte [eax + 1], 0
jne 0x6514d983
mov ecx, ebx
call fcn.6514b760
mov ecx, dword [ebx]
movaps xmm0, xmmword [0x652b4bd0]
mov eax, dword [ecx + 8]
add eax, esi
inc edi
mov dword [esp + 0x28], edi
mov eax, dword [ecx + eax*4 + 0x10]
movups xmmword [eax + 0x18], xmm0
jmp 0x6514d9d4
mov eax, dword [esp + 0x18]
mov ecx, esi
sub ecx, edi
shl ecx, 5
add ecx, dword [eax + 0xc]
lea edi, [ecx + eax]
mov ecx, ebx
call fcn.6514b760
mov ecx, dword [ebx]
mov eax, dword [ecx + 8]
add eax, esi
mov ecx, dword [ecx + eax*4 + 0x10]
add ecx, 0x18
cmp byte [esp + 0x1f], 0
jne 0x6514d9be
push dword [esp + 0x24]
push dword [edi + 0x3c]
push 0
push dword [edi + 0x38]
jmp 0x6514d9ca
push dword [edi + 0x3c]
push dword [esp + 0x28]
push dword [edi + 0x38]
push 0
call dword [0x652b188c]
mov edi, dword [esp + 0x28]
mov ecx, dword [ebx]
inc esi
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
cmp esi, eax
jl 0x6514d950
mov ebx, dword [esp + 0x38]
cmp byte [ebx + 0x159], 0
je 0x6514dbdc
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
je 0x6514dbdc
mov eax, dword [esp + 0x48]
inc eax
cmp dword [esp + 0x30], eax
jle 0x6514dbdc
push 0
lea eax, [esp + 0xb4]
mov ecx, ebx
push eax
call sym.Qt5Widgets.dll_public:_class_QRect___thiscall_QTabBarPrivate::normalizedScrollRect_int_
mov eax, dword [esp + 0xb0]
lea ecx, [esp + 0xc0]
neg eax
push 0
mov dword [ebx + 0x124], eax
mov ebx, dword [ebx + 4]
push 1
call sym.Qt5Widgets.dll_public:_void___thiscall_QStyleOption::constructor_int__int_
push ebx
lea ecx, [esp + 0xc4]
call sym.Qt5Widgets.dll_public:_void___thiscall_QStyleOption::init_class_QWidget_const__
mov ecx, ebx
call sym.Qt5Widgets.dll_public:_class_QStyle____thiscall_QWidget::style_void_const
push ebx
lea ecx, [esp + 0xc4]
push ecx
mov edx, dword [eax]
lea ecx, [esp + 0xa0]
push 0x36
push ecx
mov ecx, eax
call dword [edx + 0x5c]
mov ecx, ebx
call sym.Qt5Widgets.dll_public:_class_QStyle____thiscall_QWidget::style_void_const
push ebx
lea ecx, [esp + 0xc4]
push ecx
mov edx, dword [eax]
lea ecx, [esp + 0x68]
push 0x37
push ecx
mov ecx, eax
call dword [edx + 0x5c]
mov ecx, ebx
call sym.Qt5Widgets.dll_public:_class_QStyle____thiscall_QWidget::style_void_const
push ebx
mov ecx, dword [eax]
mov edx, dword [ecx + 0x6c]
lea ecx, [esp + 0xc4]
push ecx
push 0x33
mov ecx, eax
call edx
mov edi, dword [esp + 0x38]
mov esi, eax
add edi, 0x134
cmp byte [esp + 0x1f], 0
je 0x6514daeb
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x9c]
sub eax, esi
dec ecx
inc eax
add ecx, esi
mov dword [esp + 0x64], eax
dec esi
mov dword [esp + 0xa4], ecx
add eax, esi
mov esi, 2
mov dword [esp + 0x6c], eax
lea eax, [esi - 1]
jmp 0x6514db54
mov ecx, ebx
call sym.Qt5Widgets.dll_public:_enum_Qt::LayoutDirection___thiscall_QWidget::layoutDirection_void_
cmp eax, 1
jne 0x6514db27
mov eax, dword [esp + 0x60]
dec eax
add eax, esi
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0xa0]
sub eax, esi
dec esi
inc eax
mov dword [esp + 0x98], eax
add eax, esi
mov esi, 3
mov dword [esp + 0xa0], eax
lea eax, [esi + 1]
jmp 0x6514db54
mov eax, dword [esp + 0x98]
dec eax
add eax, esi
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x68]
sub eax, esi
dec esi
inc eax
mov dword [esp + 0x60], eax
add eax, esi
mov dword [esp + 0x68], eax
mov esi, 4
mov eax, 3
mov ecx, edi
push eax
mov ecx, dword [ecx]
call sym.Qt5Widgets.dll_public:_void___thiscall_QToolButton::setArrowType_enum_Qt::ArrowType_
mov ebx, dword [esp + 0x38]
push esi
mov ecx, dword [ebx + 0x130]
call sym.Qt5Widgets.dll_public:_void___thiscall_QToolButton::setArrowType_enum_Qt::ArrowType_
mov ecx, dword [edi]
lea eax, [esp + 0x98]
push eax
call sym.Qt5Widgets.dll_public:_void___thiscall_QWidget::setGeometry_class_QRect_const__
mov ecx, dword [edi]
push 0
call sym.Qt5Widgets.dll_public:_void___thiscall_QWidget::setEnabled_bool_
mov ecx, dword [edi]
call sym.Qt5Widgets.dll_public:_void___thiscall_QWidget::show_void_
mov ecx, dword [ebx + 0x130]
lea eax, [esp + 0x60]
push eax
call sym.Qt5Widgets.dll_public:_void___thiscall_QWidget::setGeometry_class_QRect_const__
mov ecx, dword [esp + 0x30]
sub ecx, dword [ebx + 0x124]
mov eax, dword [esp + 0xb8]
inc eax
cmp ecx, eax
mov ecx, dword [ebx + 0x130]
setg al
movzx eax, al
push eax
call sym.Qt5Widgets.dll_public:_void___thiscall_QWidget::setEnabled_bool_
mov ecx, dword [ebx + 0x130]
call sym.Qt5Widgets.dll_public:_void___thiscall_QWidget::show_void_
lea ecx, [esp + 0xc0]
call sym.Qt5Widgets.dll_public:_void___thiscall_QStyleOption::destructor_void_
jmp 0x6514dbfc
mov ecx, dword [ebx + 0x130]
mov dword [ebx + 0x124], 0
call sym.Qt5Widgets.dll_public:_void___thiscall_QWidget::hide_void_
mov ecx, dword [ebx + 0x134]
call sym.Qt5Widgets.dll_public:_void___thiscall_QWidget::hide_void_
push 0
mov ecx, ebx
call sym.Qt5Widgets.dll_public:_void___thiscall_QTabBarPrivate::layoutWidgets_int_
mov ecx, dword [esp + 0x50]
mov eax, dword [ecx]
call dword [eax + 0xc4]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x6514dc32
cmp eax, 0xffffffff
je 0x6514dc43
mov eax, dword [esp + 0x18]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6514dc43
push 4
push 0x20
push dword [esp + 0x20]
call dword [0x652b2428]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret