Function at 0x41a160
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a6f80
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push ebx
push esi
push edi
mov eax, dword [0x612790]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
cmp dword [esi + 0x40], 0
mov dword [esi], vtable.BAgentWorker.0
je 0x41a305
lea edi, [esi + 0xc]
mov dword [ebp - 0x10], edi
test edi, edi
je 0x41a1b0
mov ecx, edi
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMutex::lock_void_]
or dword [ebp - 0x10], 1
mov bl, byte [esi + 0x18]
lea ecx, [ebp - 0x10]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMutexLocker::destructor_void_]
test bl, bl
je 0x41a2b7
mov ebx, dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMutex::lock_void_]
lea ecx, [esi + 8]
mov dword [ebp - 0x10], ecx
test ecx, ecx
je 0x41a1da
call ebx
or dword [ebp - 0x10], 1
lea ecx, [ebp - 0x10]
mov dword [esi + 0x10], 2
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMutexLocker::destructor_void_]
push 0
lea ecx, [ebp - 0x1c]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QEventLoop::constructor_class_QObject__]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], closesocket
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], closesocket
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QElapsedTimer::start_void_]
lea ecx, [ebp - 0x2c]
call dword [sym.imp.Qt5Core.dll_public:_long_long___int64____thiscall_QElapsedTimer::elapsed_void_const]
test edx, edx
jg 0x41a2ae
jl 0x41a234
cmp eax, 0x2710
jae 0x41a2ae
push ecx
mov eax, esp
lea ecx, [ebp - 0x1c]
mov dword [eax], 0
call dword [sym.imp.Qt5Core.dll_public:_bool___thiscall_QEventLoop::processEvents_class_QFlags_enum_QEventLoop::ProcessEventsFlag__]
cmp dword [esi + 0x40], 0
je 0x41a289
mov dword [ebp - 0x10], edi
test edi, edi
je 0x41a25b
mov ecx, edi
call ebx
or dword [ebp - 0x10], 1
mov bl, byte [esi + 0x18]
lea ecx, [ebp - 0x10]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMutexLocker::destructor_void_]
test bl, bl
je 0x41a289
lea ecx, [ebp - 0x2c]
call dword [sym.imp.Qt5Core.dll_public:_long_long___int64____thiscall_QElapsedTimer::elapsed_void_const]
mov ebx, dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMutex::lock_void_]
test edx, edx
jl 0x41a234
jg 0x41a2ae
cmp eax, 0x2710
jb 0x41a234
jmp 0x41a2ae
push 0x19
push str.Process_finished_complete
call dword [sym.imp.Qt5Core.dll_private:_static_struct_QTypedArrayData_unsigned_short_int_____cdecl_QString::fromAscii_helper_char_const___int_]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
call fcn.0041af10
add esp, 0xc
lea ecx, [ebp - 0x10]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [ebp - 0x1c]
call dword [sym.imp.Qt5Core.dll_public_virtual:_void___thiscall_QEventLoop::destructor_void_]
cmp dword [esi + 0x40], 0
je 0x41a305
mov dword [ebp - 0x10], edi
test edi, edi
je 0x41a2d0
mov ecx, edi
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMutex::lock_void_]
or dword [ebp - 0x10], 1
mov bl, byte [esi + 0x18]
lea ecx, [ebp - 0x10]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMutexLocker::destructor_void_]
test bl, bl
je 0x41a305
push 0x17
push str.Error__Process_finished
call dword [sym.imp.Qt5Core.dll_private:_static_struct_QTypedArrayData_unsigned_short_int_____cdecl_QString::fromAscii_helper_char_const___int_]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
call fcn.0041af10
add esp, 0xc
lea ecx, [ebp - 0x14]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
mov ebx, dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMutex::destructor_void_]
lea ecx, [esi + 0x4c]
call ebx
lea ecx, [esi + 0x48]
call ebx
mov edi, dword [esi + 0x44]
mov dword [ebp - 4], 0
test edi, edi
je 0x41a34f
or ebx, 0xffffffff
mov eax, ebx
lock xadd dword [edi + 4], eax
dec eax
jne 0x41a339
mov eax, dword [edi + 8]
push edi
call eax
add esp, 4
lock xadd dword [edi], ebx
dec ebx
jne 0x41a349
push edi
call fcn.004994c0
add esp, 4
mov ebx, dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMutex::destructor_void_]
lea ecx, [esi + 0x3c]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [esi + 0x38]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [esi + 0x34]
call fcn.00404840
lea ecx, [esi + 0x30]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [esi + 0x20]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [esi + 0x1c]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [esi + 0xc]
call ebx
lea ecx, [esi + 8]
call ebx
mov ecx, esi
call dword [sym.imp.Qt5Core.dll_public_virtual:_void___thiscall_QObject::destructor_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