Function at 0x1000c840
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x100896e9
mov eax, dword fs:[0]
push eax
sub esp, 0x60
push ebx
push ebp
push esi
push edi
mov eax, dword [0x100d4254]
xor eax, esp
push eax
lea eax, [esp + 0x74]
mov dword fs:[0], eax
lea eax, [esp + 0x1c]
push eax
push 0
push 0
push 0
lea ecx, [esp + 0x5c]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMessageLogger::constructor_char_const___int__char_const__]
mov ebx, dword [sym.imp.Qt5Core.dll_public:_class_QDebug___thiscall_QMessageLogger::debug_void_]
mov ecx, eax
call ebx
push str.firewall_remove_json
mov ecx, eax
mov dword [esp + 0x80], 0
call dword [sym.imp.Qt5Core.dll_public:_class_QDebug____thiscall_QDebug::operator___char_const__]
mov edi, dword [esp + 0x84]
mov esi, eax
push edi
mov ecx, dword [esi]
call dword [sym.imp.Qt5Core.dll_public:_class_QTextStream____thiscall_QTextStream::operator___void_const__]
mov ecx, esi
call dword [sym.imp.Qt5Core.dll_public:_class_QDebug____thiscall_QDebug::maybeSpace_void_]
lea ecx, [esp + 0x1c]
mov dword [esp + 0x7c], 0xffffffff
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QDebug::destructor_void_]
mov esi, dword [sym.imp.Qt5Core.dll_private:_static_struct_QTypedArrayData_unsigned_short_int_____cdecl_QString::fromAscii_helper_char_const___int_]
push 6
push 0x1009f0b8
call esi
add esp, 8
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0x4c]
mov dword [esp + 0x7c], 1
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QVariant::constructor_void_]
push eax
lea eax, [esp + 0x20]
mov byte [esp + 0x80], 2
push eax
lea eax, [esp + 0x44]
mov ecx, edi
push eax
call fcn.1000f030
lea ecx, [esp + 0x18]
mov byte [esp + 0x7c], 3
push ecx
mov ecx, eax
call dword [sym.imp.Qt5Core.dll_public:_class_QList_class_QVariant____thiscall_QVariant::toList_void_]
mov ebp, dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QVariant::destructor_void_]
lea ecx, [esp + 0x3c]
mov byte [esp + 0x7c], 5
call ebp
lea ecx, [esp + 0x4c]
mov byte [esp + 0x7c], 6
call ebp
lea ecx, [esp + 0x1c]
mov byte [esp + 0x7c], 7
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
push 1
lea ecx, [esp + 0x30]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QVariant::constructor_int_]
push 0x16
push str.firewall_remove_update
mov byte [esp + 0x84], 8
call esi
add esp, 8
mov dword [esp + 0x84], eax
lea eax, [esp + 0x2c]
mov byte [esp + 0x7c], 9
push eax
lea eax, [esp + 0x88]
push eax
lea eax, [esp + 0x30]
mov ecx, dword [esp + 0x90]
push eax
call fcn.1000b070
lea ecx, [esp + 0x84]
mov byte [esp + 0x7c], 8
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [esp + 0x2c]
mov byte [esp + 0x7c], 7
call ebp
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x30]
call fcn.1000ba60
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + 8]
add eax, 4
lea edx, [ecx + eax*4]
mov dword [esp + 0x30], edx
mov eax, dword [ecx + 0xc]
add eax, 4
lea esi, [ecx + eax*4]
mov eax, 1
mov dword [esp + 0x34], esi
mov dword [esp + 0x38], eax
mov edi, dword [sym.imp.Qt5Core.dll_public:_class_QString___thiscall_QVariant::toString_void_]
mov byte [esp + 0x7c], 0xa
cmp edx, esi
je 0x1000caa3
mov ecx, dword [edx]
test eax, eax
je 0x1000ca8f
lea eax, [esp + 0x84]
push eax
call edi
lea eax, [esp + 0x84]
mov byte [esp + 0x7c], 0xb
push eax
mov ecx, 0x100d5870
call fcn.1000da10
lea eax, [esp + 0x88]
push eax
push 0
push 0
push 0
lea ecx, [esp + 0x70]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMessageLogger::constructor_char_const___int__char_const__]
mov ecx, eax
call ebx
lea ecx, [esp + 0x84]
mov byte [esp + 0x7c], 0xc
push ecx
push str.firewall_remove_ip
mov ecx, eax
call dword [sym.imp.Qt5Core.dll_public:_class_QDebug____thiscall_QDebug::operator___char_const__]
mov ecx, eax
call dword [sym.imp.Qt5Core.dll_public:_class_QDebug____thiscall_QDebug::operator___class_QString_const__]
lea ecx, [esp + 0x88]
mov byte [esp + 0x7c], 0xb
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QDebug::destructor_void_]
lea ecx, [esp + 0x84]
mov byte [esp + 0x7c], 0xa
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
mov esi, dword [esp + 0x34]
xor eax, eax
mov edx, dword [esp + 0x30]
add edx, 4
xor eax, 1
mov dword [esp + 0x30], edx
mov dword [esp + 0x38], eax
jne 0x1000c9f0
mov ebx, dword [esp + 0x2c]
or edi, 0xffffffff
mov byte [esp + 0x7c], 7
mov eax, dword [ebx]
test eax, eax
je 0x1000caca
cmp eax, edi
je 0x1000cb16
mov eax, edi
lock xadd dword [ebx], eax
setne al
test al, al
jne 0x1000cb16
mov ebx, dword [esp + 0x2c]
mov eax, dword [ebx + 0xc]
add eax, 4
lea esi, [ebx + eax*4]
mov eax, dword [ebx + 8]
add eax, 4
lea eax, [ebx + eax*4]
mov dword [esp + 0x84], eax
cmp eax, esi
je 0x1000cb0c
mov edi, dword [esi - 4]
sub esi, 4
test edi, edi
je 0x1000cb05
mov ecx, edi
call ebp
push edi
call sub.MSVCR120.dll_void___cdecl_operator_delete_void__
mov eax, dword [esp + 0x88]
add esp, 4
cmp esi, eax
jne 0x1000cae7
or edi, 0xffffffff
push ebx
call dword [sym.imp.Qt5Core.dll_public:_static_void___cdecl_QListData::dispose_struct_QListData::Data__]
add esp, 4
lea eax, [esp + 0x88]
mov ecx, 0x100d5870
push eax
call fcn.1000be70
mov esi, eax
lea eax, [esp + 0x84]
mov byte [esp + 0x7c], 0xd
push eax
push 0
push 0
push 0
lea ecx, [esp + 0x70]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QMessageLogger::constructor_char_const___int__char_const__]
mov ecx, eax
call dword [sym.imp.Qt5Core.dll_public:_class_QDebug___thiscall_QMessageLogger::debug_void_]
push esi
push str.g_firewallWhiteList_remove
mov ecx, eax
mov byte [esp + 0x84], 0xe
call dword [sym.imp.Qt5Core.dll_public:_class_QDebug____thiscall_QDebug::operator___char_const__]
mov ecx, eax
call dword [sym.imp.Qt5Core.dll_public:_class_QDebug____thiscall_QDebug::operator___class_QString_const__]
lea ecx, [esp + 0x84]
mov byte [esp + 0x7c], 0xd
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QDebug::destructor_void_]
lea ecx, [esp + 0x88]
mov byte [esp + 0x7c], 7
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea eax, [esp + 0x88]
push eax
call dword [sym.imp.Qt5Core.dll_public:_static_class_QString___cdecl_QCoreApplication::applicationDirPath_void_]
push 0x1009e960
push eax
lea eax, [esp + 0x90]
mov byte [esp + 0x88], 0xf
push eax
call fcn.10004860
push str.Firewall.dll
push eax
lea eax, [esp + 0x2c]
mov byte [esp + 0x94], 0x10
push eax
call fcn.10004860
add esp, 0x1c
lea ecx, [esp + 0x84]
mov byte [esp + 0x7c], 0x12
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [esp + 0x88]
mov byte [esp + 0x7c], 0x13
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea eax, [esp + 0x14]
push eax
call fcn.10019bc0
add esp, 4
mov ecx, eax
call fcn.100195e0
test al, al
je 0x1000cd40
push dword [0x100d5874]
lea ecx, [esp + 0x24]
call dword [sym.imp.Qt5Network.dll_public:_void___thiscall_QHostAddress::constructor_unsigned_int_]
mov esi, eax
mov ecx, dword [0x100d5870]
mov byte [esp + 0x7c], 0x14
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
cmp edx, 1
je 0x1000cc8f
test edx, edx
je 0x1000cc8f
test dword [ecx + 8], 0x7fffffff
jne 0x1000cc64
push 2
push 0
push 4
push 4
call dword [sym.imp.Qt5Core.dll_public:_static_struct_QArrayData____cdecl_QArrayData::allocate_unsigned_int__unsigned_int__unsigned_int__class_QFlags_enum_QArrayData::AllocationOption__]
mov ecx, eax
add esp, 0x10
mov dword [0x100d5870], ecx
jmp 0x1000cc8f
push ecx
mov eax, esp
mov dword [eax], 0
mov ecx, dword [0x100d5870]
mov eax, dword [ecx + 8]
and eax, 0x7fffffff
push eax
push dword [ecx + 4]
mov ecx, 0x100d5870
call fcn.100349d0
mov ecx, dword [0x100d5870]
mov eax, dword [ecx + 0xc]
add eax, ecx
mov ecx, esi
push ebx
push eax
call dword [sym.imp.Qt5Network.dll_public:_unsigned_int___thiscall_QHostAddress::toIPv4Address_void_const]
push eax
lea eax, [esp + 0x20]
push eax
call fcn.10019bc0
add esp, 4
mov ecx, eax
call fcn.10019f00
lea ecx, [esp + 0x20]
mov byte [esp + 0x7c], 0x13
call dword [sym.imp.Qt5Network.dll_public:_void___thiscall_QHostAddress::destructor_void_]
lea eax, [esp + 0x28]
push eax
call dword [sym.imp.Qt5Core.dll_public:_static_class_QString___cdecl_QCoreApplication::applicationDirPath_void_]
push 0x1009e960
push eax
lea eax, [esp + 0x30]
mov byte [esp + 0x88], 0x15
push eax
call fcn.10004860
push str.Firewall.ini
push eax
lea eax, [esp + 0x38]
mov byte [esp + 0x94], 0x16
push eax
call fcn.10004860
add esp, 0x1c
push eax
mov ecx, 0x100d5870
mov byte [esp + 0x80], 0x17
call fcn.1000dae0
lea ecx, [esp + 0x20]
mov byte [esp + 0x7c], 0x16
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [esp + 0x24]
mov byte [esp + 0x7c], 0x15
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [esp + 0x28]
mov byte [esp + 0x7c], 0x13
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
lea ecx, [esp + 0x14]
mov byte [esp + 0x7c], 7
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QString::destructor_void_]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x7c], 0xffffffff
mov eax, dword [ebx]
test eax, eax
je 0x1000cd76
cmp eax, 0xffffffff
je 0x1000cdbf
lock xadd dword [ebx], edi
dec edi
setne al
test al, al
jne 0x1000cdbf
mov ebx, dword [esp + 0x18]
mov eax, dword [ebx + 0xc]
add eax, 4
lea esi, [ebx + eax*4]
mov eax, dword [ebx + 8]
add eax, 4
lea eax, [ebx + eax*4]
mov dword [esp + 0x84], eax
cmp eax, esi
je 0x1000cdb5
mov edi, dword [esi - 4]
sub esi, 4
test edi, edi
je 0x1000cdb1
mov ecx, edi
call ebp
push edi
call sub.MSVCR120.dll_void___cdecl_operator_delete_void__
mov eax, dword [esp + 0x88]
add esp, 4
cmp esi, eax
jne 0x1000cd93
push ebx
call dword [sym.imp.Qt5Core.dll_public:_static_void___cdecl_QListData::dispose_struct_QListData::Data__]
add esp, 4
mov ecx, dword [esp + 0x74]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 8