Function at 0x6702b560
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x67288dcd
mov eax, dword fs:[0]
push eax
sub esp, 0x54
push ebx
push esi
push edi
mov eax, dword [0x674c7008]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [edi + 0xc]
add eax, 0x30
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], eax
je 0x6702b5b1
mov ecx, eax
call sym.Qt5Core.dll_public:_void___thiscall_QMutex::lock_void_
mov eax, dword [ebp - 0x18]
or eax, 1
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
nop dword [eax + eax]
mov esi, dword [edi + 0x10]
mov dword [edi + 0x10], 0
nop word [eax + eax]
test esi, esi
je 0x6702b632
mov ecx, dword [esi + 4]
mov dword [ebp - 0x20], ecx
test al, 1
je 0x6702b5f1
and eax, 0xfffffffe
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], eax
and eax, 0xfffffffe
mov ecx, eax
call sym.Qt5Core.dll_public:_void___thiscall_QMutex::unlock_void_
mov byte [ebp - 4], 1
mov ecx, esi
mov eax, dword [esi]
call dword [eax]
cmp dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 4], 0
je 0x6702b611
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax + 4]
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x6702b632
test al, 1
jne 0x6702b632
and eax, 0xfffffffe
mov ecx, eax
call sym.Qt5Core.dll_public:_void___thiscall_QMutex::lock_void_
mov eax, dword [ebp - 0x18]
or eax, 1
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], eax
mov eax, dword [edi + 0xc]
mov esi, dword [eax + 0x38]
lea ecx, [eax + 0x38]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x2c], ecx
mov ecx, dword [eax + 0x3c]
mov eax, dword [eax + 0x34]
mov edx, dword [eax + 0xc]
sub edx, dword [ecx + 0xc]
sub edx, dword [esi + 0xc]
add edx, dword [ecx + 8]
add edx, dword [esi + 8]
mov esi, dword [ebp - 0x20]
mov eax, dword [esi + 0x50]
add eax, edx
mov dword [ebp - 0x28], eax
cmp eax, dword [esi + 0x4c]
jle 0x6702b66f
cmp edx, 1
jg 0x6702b7b1
mov eax, dword [esi + 0x40]
lea ecx, [esi + 0x40]
mov dword [ebp - 0x20], ecx
cmp dword [eax + 4], 0
jne 0x6702b7f7
mov eax, dword [esi + 0x4c]
cmp dword [ebp - 0x28], eax
jle 0x6702b693
cmp edx, 1
jg 0x6702b7b1
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x28]
push eax
mov byte [ebp - 0x11], 0
mov dword [ebp - 0x28], edi
call fcn.6701d590
mov eax, dword [edi + 0xc]
add dword [eax + 0x54], 0xffffffff
jne 0x6702b6ba
mov ecx, dword [edi + 0xc]
add ecx, 0x44
call sym.Qt5Core.dll_public:_void___thiscall_QWaitCondition::wakeAll_void_
mov eax, dword [edi + 0xc]
lea ecx, [ebp - 0x4c]
push 1
mov eax, dword [eax + 0x48]
cdq
push edx
push eax
call sym.Qt5Core.dll_public:_void___thiscall_QDeadlineTimer::constructor_long_long___int64___enum_Qt::TimerType_
lea ecx, [ebp - 0x3c]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x3c], xmm0
call sym.Qt5Core.dll_public:_long_long___int64____thiscall_QDeadlineTimer::remainingTime_void_const
push eax
mov eax, dword [ebp - 0x18]
lea ecx, [edi + 8]
and eax, 0xfffffffe
push eax
call sym.Qt5Core.dll_public:_bool___thiscall_QWaitCondition::wait_class_QMutex___unsigned_long_int_
mov eax, dword [edi + 0xc]
inc dword [eax + 0x54]
mov edx, dword [edi + 0xc]
add edx, 0x38
mov dword [ebp - 0x28], edx
mov ecx, dword [edx]
mov eax, dword [ecx + 0xc]
mov esi, dword [ecx + 8]
sub eax, esi
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x6702b778
mov eax, dword [ecx + 0xc]
add esi, 4
add eax, 4
lea esi, [ecx + esi*4]
lea eax, [ecx + eax*4]
cmp esi, eax
je 0x6702b778
nop
cmp dword [esi], edi
je 0x6702b72d
add esi, 4
cmp esi, eax
jne 0x6702b720
jmp 0x6702b778
mov eax, dword [ecx + 8]
lea eax, [eax*4 + 0x10]
sub esi, eax
sub esi, ecx
sar esi, 2
cmp esi, 0xffffffff
je 0x6702b778
test esi, esi
js 0x6702b774
cmp esi, dword [ebp - 0x2c]
jge 0x6702b774
mov eax, dword [ecx]
cmp eax, 1
je 0x6702b766
test eax, eax
je 0x6702b766
mov eax, dword [edx]
mov ecx, edx
push dword [eax + 4]
call fcn.6700e830
mov edx, dword [ebp - 0x28]
push esi
mov ecx, edx
call sym.Qt5Core.dll_public:_void___thiscall_QListData::remove_int_
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
mov byte [ebp - 0x11], 1
mov esi, dword [edi + 0xc]
xor eax, eax
mov dword [ebp - 0x2c], edi
mov ecx, dword [esi + 0x34]
cmp dword [ecx + 0x18], eax
je 0x6702b78d
mov eax, dword [ecx + 0x1c]
xor eax, edi
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [esi + 0x34]
call fcn.6701a220
mov ecx, dword [esi + 0x34]
cmp dword [eax], ecx
jne 0x6702b7a7
add dword [esi + 0x54], 0xffffffff
jmp 0x6702b7c7
cmp byte [ebp - 0x11], 0
je 0x6702b8b7
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x2c], edi
push eax
lea ecx, [esi + 0x3c]
call fcn.6701d590
mov eax, dword [edi + 0xc]
add dword [eax + 0x54], 0xffffffff
jne 0x6702b7d4
mov ecx, dword [edi + 0xc]
add ecx, 0x44
call sym.Qt5Core.dll_public:_void___thiscall_QWaitCondition::wakeAll_void_
mov eax, dword [ebp - 0x18]
test al, 1
je 0x6702b7e5
and eax, 0xfffffffe
mov ecx, eax
call sym.Qt5Core.dll_public:_void___thiscall_QMutex::unlock_void_
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [eax]
cmp eax, 1
je 0x6702b837
test eax, eax
je 0x6702b837
mov eax, dword [ecx]
mov edx, dword [eax + 8]
and edx, 0x7fffffff
jne 0x6702b825
push 2
push edx
push 4
push 4
call sym.Qt5Core.dll_public:_static_struct_QArrayData____cdecl_QArrayData::allocate_unsigned_int__unsigned_int__unsigned_int__class_QFlags_enum_QArrayData::AllocationOption__
mov ecx, dword [ebp - 0x20]
add esp, 0x10
mov dword [ecx], eax
jmp 0x6702b837
push ecx
mov eax, esp
push edx
mov dword [eax], 0
call fcn.67019070
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx]
mov eax, dword [ecx + 0xc]
mov esi, dword [ecx + eax]
mov eax, dword [esi + 4]
mov ecx, dword [esi + eax*4 + 0xc]
mov dword [esi + eax*4 + 0xc], 0
mov eax, dword [esi + 4]
mov edx, dword [esi + 8]
inc eax
mov dword [ebp - 0x20], ecx
mov ecx, eax
mov dword [esi + 4], eax
cmp eax, edx
jg 0x6702b872
cmp dword [esi + eax*4 + 0xc], 0
jne 0x6702b872
inc eax
mov dword [esi + 4], eax
mov ecx, eax
cmp eax, edx
jle 0x6702b861
cmp ecx, edx
jg 0x6702b884
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
jmp 0x6702b5d0
mov ecx, dword [edi + 0xc]
add ecx, 0x40
mov eax, dword [ecx]
mov edx, dword [eax + 0xc]
add edx, eax
lea eax, [edx + 4]
push eax
push edx
call fcn.6702d290
push 0x40c
push esi
call fcn.67284aa1
mov eax, dword [ebp - 0x1c]
add esp, 8
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
jmp 0x6702b5d0
mov eax, dword [ebp - 0x18]
jmp 0x6702b5c0