Function at 0x1000bab0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x10063e49
mov eax, dword fs:[0]
push eax
sub esp, 0x60
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1009b004]
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 0x10072c24
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.1000e260
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.1000a270
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.1000ac60
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 0x1000bd13
mov ecx, dword [edx]
test eax, eax
je 0x1000bcff
lea eax, [esp + 0x84]
push eax
call edi
lea eax, [esp + 0x84]
mov byte [esp + 0x7c], 0xb
push eax
mov ecx, 0x1009c3dc
call fcn.1000cc50
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 0x1000bc60
mov ebx, dword [esp + 0x2c]
or edi, 0xffffffff
mov byte [esp + 0x7c], 7
mov eax, dword [ebx]
test eax, eax
je 0x1000bd3a
cmp eax, edi
je 0x1000bd86
mov eax, edi
lock xadd dword [ebx], eax
setne al
test al, al
jne 0x1000bd86
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 0x1000bd7c
mov edi, dword [esi - 4]
sub esi, 4
test edi, edi
je 0x1000bd75
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 0x1000bd57
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, 0x1009c3dc
push eax
call fcn.1000b040
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 0x100724c0
push eax
lea eax, [esp + 0x90]
mov byte [esp + 0x88], 0xf
push eax
call fcn.10003b10
push str.Firewall.dll
push eax
lea eax, [esp + 0x2c]
mov byte [esp + 0x94], 0x10
push eax
call fcn.10003b10
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.10010c00
add esp, 4
mov ecx, eax
call fcn.10010d90
test al, al
je 0x1000bfb0
push dword [0x1009c3e0]
lea ecx, [esp + 0x24]
call dword [sym.imp.Qt5Network.dll_public:_void___thiscall_QHostAddress::constructor_unsigned_int_]
mov esi, eax
mov ecx, dword [0x1009c3dc]
mov byte [esp + 0x7c], 0x14
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
cmp edx, 1
je 0x1000beff
test edx, edx
je 0x1000beff
test dword [ecx + 8], 0x7fffffff
jne 0x1000bed4
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 [0x1009c3dc], ecx
jmp 0x1000beff
push ecx
mov eax, esp
mov dword [eax], 0
mov ecx, dword [0x1009c3dc]
mov eax, dword [ecx + 8]
and eax, 0x7fffffff
push eax
push dword [ecx + 4]
mov ecx, 0x1009c3dc
call fcn.1001bd30
mov ecx, dword [0x1009c3dc]
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.10010c00
add esp, 4
mov ecx, eax
call fcn.10010f50
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 0x100724c0
push eax
lea eax, [esp + 0x30]
mov byte [esp + 0x88], 0x15
push eax
call fcn.10003b10
push str.Firewall.ini
push eax
lea eax, [esp + 0x38]
mov byte [esp + 0x94], 0x16
push eax
call fcn.10003b10
add esp, 0x1c
push eax
mov ecx, 0x1009c3dc
mov byte [esp + 0x80], 0x17
call fcn.1000cd20
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 0x1000bfe6
cmp eax, 0xffffffff
je 0x1000c02f
lock xadd dword [ebx], edi
dec edi
setne al
test al, al
jne 0x1000c02f
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 0x1000c025
mov edi, dword [esi - 4]
sub esi, 4
test edi, edi
je 0x1000c021
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 0x1000c003
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