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

Disassembly:
sub esp, 0xc0
push ebx
mov ebx, dword [esp + 0xc8]
mov eax, ecx
push ebp
push esi
push edi
push dword [esp + 0xd8]
mov ebp, dword [eax + 4]
mov ecx, ebx
mov dword [esp + 0x44], eax
call sym.Qt5Network.dll_public:_void___thiscall_QDnsDomainNameRecord::constructor_class_QDnsDomainNameRecord_const__
mov eax, dword [sym.imp.Qt5Core.dll_struct_QListData::Data_const_QListData::shared_null]
mov ecx, ebx
mov dword [esp + 0x48], eax
mov eax, dword [sym.imp.Qt5Core.dll_struct_QHashData_const_QHashData::shared_null]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
lea eax, [esp + 0x30]
push eax
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
call sym.Qt5Network.dll_public:_class_QList_struct_QPair_class_QByteArray__class_QByteArray_____thiscall_QNetworkCacheMetaData::rawHeaders_void_
push eax
lea ecx, [esp + 0x4c]
call fcn.640117d0
mov eax, dword [esp + 0x30]
mov eax, dword [eax]
test eax, eax
je 0x64047085
cmp eax, 0xffffffff
je 0x640470b0
mov eax, dword [esp + 0x30]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x640470b0
mov esi, dword [esp + 0x30]
lea ecx, [esp + 0x30]
mov eax, dword [esi + 0xc]
add eax, 4
lea eax, [esi + eax*4]
push eax
mov eax, dword [esi + 8]
add eax, 4
lea eax, [esi + eax*4]
push eax
call fcn.640068e0
push esi
call dword [sym.imp.Qt5Core.dll_public:_static_void___cdecl_QListData::dispose_struct_QListData::Data__]
add esp, 4
lea eax, [esp + 0x68]
mov ecx, ebp
push eax
call sym.Qt5Network.dll_public:_class_QList_class_QByteArray____thiscall_QNetworkReply::rawHeaderList_void_
mov eax, dword [esp + 0x68]
mov edi, dword [eax + 0xc]
mov esi, dword [eax + 8]
add edi, 4
add esi, 4
lea edi, [eax + edi*4]
lea esi, [eax + esi*4]
cmp esi, edi
je 0x640473b6
mov ebx, dword [sym.imp.Qt5Core.dll_int___cdecl_qstrcmp_class_QByteArray_const___char_const__]
push esi
lea ecx, [esp + 0x14]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::constructor_class_QByteArray_const__]
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x38]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::constructor_class_QByteArray_const__]
lea eax, [esp + 0x6c]
push eax
lea ecx, [esp + 0x14]
call dword [sym.imp.Qt5Core.dll__toLower_QByteArray__QGBE_AV1_XZ]
push eax
lea ecx, [esp + 0x14]
call dword [sym.imp.Qt5Core.dll_public:_class_QByteArray____thiscall_QByteArray::operator_class_QByteArray__]
lea ecx, [esp + 0x6c]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
lea eax, [esp + 0x10]
push 0x640b61d8
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push str.keep_alive
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push 0x640b5dbc
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push 0x640b5dd0
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push 0x640b8658
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push str.trailers
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push 0x640b5e24
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push str.upgrade
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push str.set_cookie
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push str.warning
push eax
call ebx
add esp, 8
test eax, eax
jne 0x640472e4
lea eax, [esp + 0x10]
mov ecx, ebp
push eax
lea eax, [esp + 0x20]
push eax
call sym.Qt5Network.dll_public:_class_QByteArray___thiscall_QNetworkReply::rawHeader_class_QByteArray_const__
mov eax, dword [esp + 0x1c]
cmp dword [eax + 4], 3
jne 0x640472da
push 0
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x24]
call dword [sym.imp.Qt5Core.dll_public:_class_QByteRef___thiscall_QByteArray::operator___int_]
push 0x31
mov ecx, eax
call dword [sym.imp.Qt5Core.dll_public:_bool___thiscall_QByteRef::operator_char_const]
test al, al
je 0x640472da
push 1
lea eax, [esp + 0xb4]
push eax
lea ecx, [esp + 0x24]
call dword [sym.imp.Qt5Core.dll_public:_class_QByteRef___thiscall_QByteArray::operator___int_]
push 0x30
mov ecx, eax
call dword [0x640b08f0]
test al, al
je 0x640472da
push 1
lea eax, [esp + 0xbc]
push eax
lea ecx, [esp + 0x24]
call dword [sym.imp.Qt5Core.dll_public:_class_QByteRef___thiscall_QByteArray::operator___int_]
push 0x39
mov ecx, eax
call dword [sym.imp.Qt5Core.dll_public:_bool___thiscall_QByteRef::operator__char_const]
test al, al
je 0x640472da
push 2
lea eax, [esp + 0xc4]
push eax
lea ecx, [esp + 0x24]
call dword [sym.imp.Qt5Core.dll_public:_class_QByteRef___thiscall_QByteArray::operator___int_]
push 0x30
mov ecx, eax
call dword [0x640b08f0]
test al, al
je 0x640472da
push 2
lea eax, [esp + 0xcc]
push eax
lea ecx, [esp + 0x24]
call dword [sym.imp.Qt5Core.dll_public:_class_QByteRef___thiscall_QByteArray::operator___int_]
push 0x39
mov ecx, eax
call dword [sym.imp.Qt5Core.dll_public:_bool___thiscall_QByteRef::operator__char_const]
test al, al
je 0x640472da
lea ecx, [esp + 0x1c]
jmp 0x6404738a
lea ecx, [esp + 0x1c]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x50]
call fcn.640101d0
mov ecx, dword [esp + 0x48]
mov edx, eax
mov eax, dword [ecx + 0xc]
add eax, 4
lea eax, [ecx + eax*4]
cmp dword [edx], eax
je 0x64047343
lea eax, [esp + 0x10]
push 0x640b5d18
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push str.content_range
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push str.content_type
push eax
call ebx
add esp, 8
test eax, eax
je 0x64047390
lea eax, [esp + 0x10]
push 0x640b26dc
push eax
call ebx
add esp, 8
test eax, eax
jne 0x64047366
mov eax, dword [esp + 0x40]
cmp dword [eax + 0xf8], 0x130
je 0x64047390
lea eax, [esp + 0x10]
mov ecx, ebp
push eax
lea eax, [esp + 0x74]
push eax
call sym.Qt5Network.dll_public:_class_QByteArray___thiscall_QNetworkReply::rawHeader_class_QByteArray_const__
push eax
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x50]
call fcn.64011e10
lea ecx, [esp + 0x70]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
lea ecx, [esp + 0x34]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
lea ecx, [esp + 0x10]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
add esi, 4
cmp esi, edi
jne 0x640470e0
mov ebx, dword [esp + 0xd4]
lea eax, [esp + 0x48]
mov ecx, ebx
push eax
call sym.Qt5Network.dll_public:_void___thiscall_QNetworkCacheMetaData::setRawHeaders_class_QList_struct_QPair_class_QByteArray__class_QByteArray___const__
mov eax, dword [sym.imp.Qt5Core.dll_struct_QHashData_const_QHashData::shared_null]
lea ecx, [esp + 0x5c]
mov ebx, dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::constructor_char_const___int_]
push 0xffffffffffffffff
push str.Cache_Control
mov dword [esp + 0x1c], eax
call ebx
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0x50]
call fcn.640101d0
lea ecx, [esp + 0x5c]
mov esi, dword [eax]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
mov ecx, dword [esp + 0x48]
mov edi, dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QHashData::free_helper_void____cdecl___struct_QHashData::Node___]
mov ebp, dword [sym.imp.Qt5Core.dll_unsigned_int___cdecl_qHash_class_QByteArray_const___unsigned_int_]
mov eax, dword [ecx + 0xc]
add eax, 4
lea eax, [ecx + eax*4]
cmp esi, eax
je 0x64047576
mov eax, dword [esi]
add eax, 4
push eax
lea eax, [esp + 0x64]
push eax
call fcn.64048fe0
mov ecx, eax
add esp, 8
mov eax, dword [sym.imp.Qt5Core.dll_struct_QHashData_const_QHashData::shared_null]
mov edx, dword [ecx]
mov dword [ecx], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x14], edx
lea edx, [ecx + 8]
mov eax, dword [edx]
test eax, eax
je 0x64047460
cmp eax, 0xffffffff
je 0x64047467
or eax, 0xffffffff
lock xadd dword [edx], eax
setne al
test al, al
jne 0x64047467
push 0x64046f00
call edi
mov ecx, dword [esp + 0x60]
add ecx, 8
mov eax, dword [ecx]
test eax, eax
je 0x64047487
cmp eax, 0xffffffff
je 0x64047492
or eax, 0xffffffff
lock xadd dword [ecx], eax
setne al
test al, al
jne 0x64047492
mov ecx, dword [esp + 0x60]
push 0x64046f00
call edi
push 0xffffffffffffffff
push str.max_age
lea ecx, [esp + 0x44]
call ebx
mov eax, dword [esp + 0x14]
cmp dword [eax + 0xc], 0
je 0x640474e6
xor ecx, ecx
cmp dword [eax + 0x18], ecx
je 0x640474bf
push dword [eax + 0x1c]
lea eax, [esp + 0x40]
push eax
call ebp
add esp, 8
mov ecx, eax
push ecx
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x1c]
call fcn.640094a0
mov eax, dword [eax]
cmp eax, dword [esp + 0x14]
je 0x640474e6
add eax, 0xc
lea ecx, [esp + 0x28]
push eax
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::constructor_class_QByteArray_const__]
jmp 0x640474f0
lea ecx, [esp + 0x28]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::constructor_void_]
lea ecx, [esp + 0x3c]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
mov eax, dword [esp + 0x28]
cmp dword [eax + 4], 0
je 0x6404756c
lea eax, [esp + 0x24]
push eax
call dword [sym.imp.Qt5Core.dll_public:_static_class_QDateTime___cdecl_QDateTime::currentDateTimeUtc_void_]
add esp, 4
lea ecx, [esp + 0x28]
push 0xa
push 0
call dword [sym.imp.Qt5Core.dll_public:_int___thiscall_QByteArray::toInt_bool___int_const]
cdq
lea ecx, [esp + 0x24]
push edx
push eax
lea eax, [esp + 0x40]
push eax
call dword [sym.imp.Qt5Core.dll_public:_class_QDateTime___thiscall_QDateTime::addSecs_long_long___int64__]
push eax
lea ecx, [esp + 0x28]
call dword [sym.imp.Qt5Core.dll_public:_class_QDateTime____thiscall_QDateTime::operator_class_QDateTime__]
mov esi, dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QDateTime::destructor_void_]
lea ecx, [esp + 0x38]
call esi
mov ecx, dword [esp + 0xd4]
lea eax, [esp + 0x24]
push eax
call sym.Qt5Network.dll_public:_void___thiscall_QNetworkCacheMetaData::setExpirationDate_class_QDateTime_const__
lea ecx, [esp + 0x24]
call esi
lea ecx, [esp + 0x28]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
jmp 0x640475e4
lea ecx, [esp + 0x28]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
push 0xffffffffffffffff
push str.expires
lea ecx, [esp + 0x2c]
call ebx
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0x50]
call fcn.640101d0
lea ecx, [esp + 0x24]
mov esi, dword [eax]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
mov ecx, dword [esp + 0x48]
mov eax, dword [ecx + 0xc]
add eax, 4
lea eax, [ecx + eax*4]
cmp esi, eax
je 0x640475e4
mov eax, dword [esi]
add eax, 4
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.64010220
mov ecx, dword [esp + 0xdc]
lea eax, [esp + 0x40]
add esp, 8
push eax
call sym.Qt5Network.dll_public:_void___thiscall_QNetworkCacheMetaData::setExpirationDate_class_QDateTime_const__
lea ecx, [esp + 0x38]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QDateTime::destructor_void_]
push 0xffffffffffffffff
push str.last_modified
lea ecx, [esp + 0x6c]
call ebx
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x50]
call fcn.640101d0
lea ecx, [esp + 0x64]
mov esi, dword [eax]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
mov ecx, dword [esp + 0x48]
mov eax, dword [ecx + 0xc]
add eax, 4
lea eax, [ecx + eax*4]
cmp esi, eax
je 0x6404764e
mov eax, dword [esi]
add eax, 4
push eax
lea eax, [esp + 0x30]
push eax
call fcn.64010220
mov ecx, dword [esp + 0xdc]
add esp, 8
push eax
call sym.Qt5Network.dll_public:_void___thiscall_QNetworkCacheMetaData::setLastModified_class_QDateTime_const__
lea ecx, [esp + 0x2c]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QDateTime::destructor_void_]
mov esi, dword [esp + 0x40]
lea ecx, [esi + 0xe8]
call fcn.640420a0
cmp eax, 1
jne 0x640476b4
push 0xffffffffffffffff
push str.no_store
lea ecx, [esp + 0x20]
call ebx
mov eax, dword [esp + 0x14]
xor ecx, ecx
cmp dword [eax + 0x18], ecx
je 0x64047689
push dword [eax + 0x1c]
lea eax, [esp + 0x1c]
push eax
call ebp
add esp, 8
mov ecx, eax
push ecx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
call fcn.640094a0
lea ecx, [esp + 0x18]
mov eax, dword [eax]
cmp eax, dword [esp + 0x14]
setne bl
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
xor bl, 1
mov byte [esp + 0x18], bl
jmp 0x64047718
lea ecx, [esi + 0xe8]
call fcn.640420a0
cmp eax, 3
jne 0x64047713
push 0xffffffffffffffff
push str.max_age
lea ecx, [esp + 0x20]
call ebx
mov eax, dword [esp + 0x14]
xor ecx, ecx
cmp dword [eax + 0x18], ecx
je 0x640476eb
push dword [eax + 0x1c]
lea eax, [esp + 0x1c]
push eax
call ebp
add esp, 8
mov ecx, eax
push ecx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
call fcn.640094a0
lea ecx, [esp + 0x18]
mov eax, dword [eax]
cmp eax, dword [esp + 0x14]
setne bl
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QByteArray::destructor_void_]
mov byte [esp + 0x18], bl
jmp 0x64047718
mov byte [esp + 0x18], 0
push dword [esp + 0x18]
mov ebp, dword [esp + 0xd8]
mov ecx, ebp
call sym.Qt5Network.dll_public:_void___thiscall_QNetworkCacheMetaData::setSaveToDisk_bool_
mov eax, dword [sym.imp.Qt5Core.dll_struct_QHashData_const_QHashData::shared_null]
mov ebx, esi
mov dword [esp + 0x20], eax
mov eax, dword [ebx + 0xf8]
cmp eax, 0x130
je 0x640477cb
push eax
lea ecx, [esp + 0x8c]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QVariant::constructor_int_]
lea eax, [esp + 0x88]
mov dword [esp + 0x2c], 0
push eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x2c]
call fcn.64010850
mov esi, dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QVariant::destructor_void_]
lea ecx, [esp + 0x88]
call esi
lea eax, [ebx + 0xfc]
push eax
lea ecx, [esp + 0x9c]
call dword [sym.imp.Qt5Core.dll_public:_void___thiscall_QVariant::constructor_class_QString_const__]
lea eax, [esp + 0x98]
mov dword [esp + 0x2c], 1
push eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x8c]
push eax
lea ecx, [esp + 0x2c]
call fcn.64010850
lea ecx, [esp + 0x98]
call esi
jmp 0x6404783d
mov ecx, dword [esp + 0xd8]
lea eax, [esp + 0x44]
push eax
call sym.Qt5Network.dll_public:_class_QHash_enum_QNetworkRequest::Attribute__class_QVariant____thiscall_QNetworkCacheMetaData::attributes_void_
mov ecx, eax
mov eax, dword [sym.imp.Qt5Core.dll_struct_QHashData_const_QHashData::shared_null]
mov edx, dword [ecx]
mov dword [ecx], eax
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x20], edx
lea edx, [ecx + 8]
mov eax, dword [edx]
test eax, eax
je 0x6404780b
cmp eax, 0xffffffff
je 0x64047812
or eax, 0xffffffff
lock xadd dword [edx], eax
setne al
test al, al
jne 0x64047812
push 0x6400a7f0
call edi
mov ecx, dword [esp + 0x44]
add ecx, 8
mov eax, dword [ecx]
test eax, eax
je 0x64047832
cmp eax, 0xffffffff
je 0x6404783d
or eax, 0xffffffff
lock xadd dword [ecx], eax
setne al
test al, al
jne 0x6404783d
mov ecx, dword [esp + 0x44]
push 0x6400a7f0
call edi
lea eax, [esp + 0x20]
mov ecx, ebp
push eax
call sym.Qt5Network.dll_public:_void___thiscall_QNetworkCacheMetaData::setAttributes_class_QHash_enum_QNetworkRequest::Attribute__class_QVariant__const__
mov ecx, dword [esp + 0x20]
add ecx, 8
mov eax, dword [ecx]
test eax, eax
je 0x6404786a
or edx, 0xffffffff
cmp eax, edx
je 0x64047878
mov eax, edx
lock xadd dword [ecx], eax
setne al
test al, al
jne 0x64047878
mov ecx, dword [esp + 0x20]
push 0x6400a7f0
call edi
or edx, 0xffffffff
mov ecx, dword [esp + 0x14]
add ecx, 8
mov eax, dword [ecx]
test eax, eax
je 0x64047896
cmp eax, 0xffffffff
je 0x640478a1
lock xadd dword [ecx], edx
dec edx
setne al
test al, al
jne 0x640478a1
mov ecx, dword [esp + 0x14]
push 0x64046f00
call edi
lea ecx, [esp + 0x68]
call fcn.64003140
lea ecx, [esp + 0x48]
call fcn.6400f950
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0xc0
ret 8