joyce8/EMBER2024-capa huggingface dataset:
Function at 0x6708f310
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
push 0xffffffffffffffff
push 0x6722f018
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push ebp
push esi
push edi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0x24]
mov dword fs:[0], eax
mov ebx, dword [esp + 0x34]
xor ebp, ebp
mov eax, dword [ebx]
mov esi, dword [eax + 0xc]
sub esi, dword [eax + 8]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], sym.Qt5Core.dll_struct_QHashData_const_QHashData::shared_null
push esi
lea ecx, [esp + 0x18]
mov dword [esp + 0x30], ebp
call fcn.6708f970
xor edi, edi
mov dword [esp + 0x18], ebp
test esi, esi
jle 0x6708f3e6
lea esp, [esp]
mov ecx, dword [ebx]
mov eax, dword [ecx + 8]
add ecx, 0x10
add eax, edi
lea eax, [ecx + eax*4]
lea ecx, [esp + 0x34]
push ecx
push eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x20]
call fcn.6708f840
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
cmp ecx, dword [eax + 0xc]
je 0x6708f3e1
inc ecx
mov dword [esp + 0x18], ecx
cmp ebp, edi
je 0x6708f3e0
mov ecx, dword [ebx]
mov eax, dword [ecx]
cmp eax, 1
je 0x6708f3be
test eax, eax
je 0x6708f3be
push dword [ecx + 4]
mov ecx, ebx
call fcn.67034270
mov edx, dword [ebx]
mov ecx, dword [edx + 8]
lea eax, [ecx + ebp]
lea esi, [edx + eax*4]
lea eax, [ecx + edi]
mov ecx, dword [edx + eax*4 + 0x10]
lea edx, [edx + eax*4]
mov eax, dword [esi + 0x10]
mov dword [edx + 0x10], eax
mov dword [esi + 0x10], ecx
mov esi, dword [esp + 0x1c]
inc ebp
inc edi
cmp edi, esi
jl 0x6708f370
cmp esi, ebp
je 0x6708f447
push ecx
mov ecx, dword [ebx]
mov edi, esp
mov eax, dword [ecx]
cmp eax, 1
je 0x6708f404
test eax, eax
je 0x6708f404
push dword [ecx + 4]
mov ecx, ebx
call fcn.67034270
mov ecx, dword [ebx]
mov eax, dword [ecx + 0xc]
add ecx, 0x10
lea eax, [ecx + eax*4]
mov dword [edi], eax
mov ecx, dword [ebx]
mov eax, dword [ecx]
cmp eax, 1
je 0x6708f428
test eax, eax
je 0x6708f428
push dword [ecx + 4]
mov ecx, ebx
call fcn.67034270
mov edx, dword [ebx]
push ecx
mov ecx, ebx
mov eax, dword [edx + 8]
add edx, 0x10
lea eax, [edx + eax*4]
mov edx, esp
lea eax, [eax + ebp*4]
mov dword [edx], eax
lea eax, [esp + 0x3c]
push eax
call fcn.67034400
mov edx, dword [esp + 0x14]
sub esi, ebp
add edx, 8
mov dword [esp + 0x2c], 0xffffffff
mov eax, dword [edx]
test eax, eax
je 0x6708f471
cmp eax, 0xffffffff
je 0x6708f47f
or ecx, 0xffffffff
lock xadd dword [edx], ecx
setne cl
test cl, cl
jne 0x6708f47f
mov ecx, dword [esp + 0x14]
push 0x67105550
call sym.Qt5Core.dll_public:_void___thiscall_QHashData::free_helper_void____cdecl___struct_QHashData::Node___
mov eax, esi
mov ecx, dword [esp + 0x24]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
Function at 0x67091b60
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
push 0xffffffffffffffff
push 0x6722f289
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push esi
push edi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0x1c]
mov dword fs:[0], eax
mov dword [esp + 0x14], 0
lea eax, [esp + 0x30]
mov dword [esp + 0x24], 1
push eax
lea ecx, [esp + 0x1c]
call sym.Qt5Core.dll_public:_void___thiscall_QDebugStateSaver::constructor_class_QDebug__
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x10]
push eax
mov byte [esp + 0x28], 2
call sym.Qt5Core.dll_public:_class_QByteArray___thiscall_QTimeZone::id_void_
push eax
lea eax, [esp + 0x10]
mov byte [esp + 0x28], 3
push eax
call sym.Qt5Core.dll_public:_static_class_QString___cdecl_QString::fromUtf8_class_QByteArray_const__
add esp, 8
mov esi, eax
mov ecx, dword [esp + 0x30]
push str.QTimeZone_
mov byte [esp + 0x28], 4
mov byte [ecx + 0x14], 0
lea ecx, [esp + 0x34]
call sym.Qt5Core.dll_public:_class_QDebug____thiscall_QDebug::operator___char_const__
mov edx, dword [esi]
mov edi, eax
mov ecx, dword [edx + 0xc]
push dword [edx + 4]
add ecx, edx
push ecx
mov ecx, edi
call sym.Qt5Core.dll_private:_void___thiscall_QDebug::putString_class_QChar_const___unsigned_int_
mov ecx, dword [edi]
cmp byte [ecx + 0x14], 0
je 0x67091c09
push 0x20
call sym.Qt5Core.dll_public:_class_QTextStream____thiscall_QTextStream::operator___char_
mov ecx, dword [edi]
push 0x29
call sym.Qt5Core.dll_public:_class_QTextStream____thiscall_QTextStream::operator___char_
mov ecx, dword [edi]
cmp byte [ecx + 0x14], 0
je 0x67091c21
push 0x20
call sym.Qt5Core.dll_public:_class_QTextStream____thiscall_QTextStream::operator___char_
mov eax, dword [esp + 0xc]
or esi, 0xffffffff
mov ecx, dword [eax]
test ecx, ecx
je 0x67091c43
cmp ecx, esi
je 0x67091c50
mov ecx, esi
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x67091c50
mov eax, dword [esp + 0xc]
push 4
push 2
push eax
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
je 0x67091c6f
cmp ecx, 0xffffffff
je 0x67091c7c
lock xadd dword [eax], esi
dec esi
setne al
test al, al
jne 0x67091c7c
mov eax, dword [esp + 0x10]
push 4
push 1
push eax
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
mov dword [esi], ecx
inc dword [ecx + 0xc]
lea ecx, [esp + 0x18]
mov dword [esp + 0x14], 1
mov byte [esp + 0x24], 1
call sym.Qt5Core.dll_public:_void___thiscall_QDebugStateSaver::destructor_void_
lea ecx, [esp + 0x30]
mov byte [esp + 0x24], 0
call sym.Qt5Core.dll_public:_void___thiscall_QDebug::destructor_void_
mov eax, esi
mov ecx, dword [esp + 0x1c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
add esp, 0x1c
ret
Function at 0x67092920
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x6722f3e8
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push esi
push edi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov esi, ecx
mov ecx, dword [esi]
mov dword [esp + 0xc], 0
test ecx, ecx
je 0x670929ca
call sym.Qt5Core.dll_public:_bool___thiscall_QTimeZonePrivate::isValid_void_const
test al, al
je 0x670929ca
mov ecx, dword [esi]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
test al, al
je 0x670929ca
mov esi, dword [esi]
mov ecx, dword [esp + 0x44]
mov edi, dword [esi]
call sym.Qt5Core.dll_public:_long_long___int64____thiscall_QDateTime::toMSecsSinceEpoch_void_const
push edx
push eax
lea eax, [esp + 0x18]
mov ecx, esi
push eax
call dword [edi + 0x3c]
mov esi, dword [esp + 0x40]
push eax
push esi
mov dword [esp + 0x40], 0
call sym.Qt5Core.dll_public:_static_struct_QTimeZone::OffsetData___cdecl_QTimeZonePrivate::toOffsetData_struct_QTimeZonePrivate::Data_const__
mov ecx, dword [esp + 0x18]
add esp, 8
mov eax, dword [ecx]
test eax, eax
je 0x670929bb
cmp eax, 0xffffffff
je 0x670929d7
or eax, 0xffffffff
lock xadd dword [ecx], eax
setne al
test al, al
jne 0x670929d7
mov ecx, dword [esp + 0x10]
push 4
push 2
push ecx
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
jmp 0x670929d7
mov esi, dword [esp + 0x40]
push esi
call sym.Qt5Core.dll_public:_static_struct_QTimeZone::OffsetData___cdecl_QTimeZonePrivate::invalidOffsetData_void_
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
add esp, 0x30
ret 8
Function at 0x670929f0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x6722f3e8
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push esi
push edi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov esi, ecx
mov ecx, dword [esi]
mov dword [esp + 0xc], 0
test ecx, ecx
je 0x67092a9a
call sym.Qt5Core.dll_public:_bool___thiscall_QTimeZonePrivate::isValid_void_const
test al, al
je 0x67092a9a
mov ecx, dword [esi]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
test al, al
je 0x67092a9a
mov esi, dword [esi]
mov ecx, dword [esp + 0x44]
mov edi, dword [esi]
call sym.Qt5Core.dll_public:_long_long___int64____thiscall_QDateTime::toMSecsSinceEpoch_void_const
push edx
push eax
lea eax, [esp + 0x18]
mov ecx, esi
push eax
call dword [edi + 0x30]
mov esi, dword [esp + 0x40]
push eax
push esi
mov dword [esp + 0x40], 0
call sym.Qt5Core.dll_public:_static_struct_QTimeZone::OffsetData___cdecl_QTimeZonePrivate::toOffsetData_struct_QTimeZonePrivate::Data_const__
mov ecx, dword [esp + 0x18]
add esp, 8
mov eax, dword [ecx]
test eax, eax
je 0x67092a8b
cmp eax, 0xffffffff
je 0x67092aa7
or eax, 0xffffffff
lock xadd dword [ecx], eax
setne al
test al, al
jne 0x67092aa7
mov ecx, dword [esp + 0x10]
push 4
push 2
push ecx
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
jmp 0x67092aa7
mov esi, dword [esp + 0x40]
push esi
call sym.Qt5Core.dll_public:_static_struct_QTimeZone::OffsetData___cdecl_QTimeZonePrivate::invalidOffsetData_void_
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
add esp, 0x30
ret 8
Function at 0x67092b00
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x6722f3e8
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push esi
push edi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov esi, ecx
mov ecx, dword [esi]
mov dword [esp + 0xc], 0
test ecx, ecx
je 0x67092baa
call sym.Qt5Core.dll_public:_bool___thiscall_QTimeZonePrivate::isValid_void_const
test al, al
je 0x67092baa
mov ecx, dword [esi]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
test al, al
je 0x67092baa
mov esi, dword [esi]
mov ecx, dword [esp + 0x44]
mov edi, dword [esi]
call sym.Qt5Core.dll_public:_long_long___int64____thiscall_QDateTime::toMSecsSinceEpoch_void_const
push edx
push eax
lea eax, [esp + 0x18]
mov ecx, esi
push eax
call dword [edi + 0x40]
mov esi, dword [esp + 0x40]
push eax
push esi
mov dword [esp + 0x40], 0
call sym.Qt5Core.dll_public:_static_struct_QTimeZone::OffsetData___cdecl_QTimeZonePrivate::toOffsetData_struct_QTimeZonePrivate::Data_const__
mov ecx, dword [esp + 0x18]
add esp, 8
mov eax, dword [ecx]
test eax, eax
je 0x67092b9b
cmp eax, 0xffffffff
je 0x67092bb7
or eax, 0xffffffff
lock xadd dword [ecx], eax
setne al
test al, al
jne 0x67092bb7
mov ecx, dword [esp + 0x10]
push 4
push 2
push ecx
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
jmp 0x67092bb7
mov esi, dword [esp + 0x40]
push esi
call sym.Qt5Core.dll_public:_static_struct_QTimeZone::OffsetData___cdecl_QTimeZonePrivate::invalidOffsetData_void_
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
add esp, 0x30
ret 8
Function at 0x67096960
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x6722f8c1
mov eax, dword fs:[0]
push eax
sub esp, 0x48
push ebx
push ebp
push esi
push edi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0x5c]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], 0
mov edi, dword [esp + 0x6c]
mov dword [edi], sym.Qt5Core.dll_struct_QArrayData_const__const_const_QArrayData::shared_null
mov esi, dword [esp + 0x7c]
mov edx, dword [esp + 0x74]
mov dword [esp + 0x64], 0
mov dword [esp + 0x14], 1
cmp esi, edx
jl 0x67096ae4
mov ebp, dword [esp + 0x78]
mov ecx, dword [esp + 0x70]
jg 0x670969d1
cmp ebp, ecx
jb 0x67096ae4
mov eax, dword [ebx]
sub ecx, 1
sbb edx, 0
push edx
push ecx
lea ecx, [esp + 0x24]
push ecx
mov ecx, ebx
call dword [eax + 0x3c]
mov edx, dword [esp + 0x24]
or ebx, 0xffffffff
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x64], 1
test edx, edx
jne 0x67096a08
cmp ecx, 0x80000000
je 0x67096ab8
cmp ecx, esi
jg 0x67096ab8
jl 0x67096a1a
cmp edx, ebp
ja 0x67096ab8
lea eax, [esp + 0x1c]
mov ecx, edi
push eax
call fcn.670948c0
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x3c]
push dword [esp + 0x28]
push dword [esp + 0x28]
mov eax, dword [ecx]
push edx
call dword [eax + 0x3c]
mov esi, eax
lea ecx, [esp + 0x1c]
push esi
call fcn.6707fc20
mov edx, dword [esi + 8]
mov dword [esp + 0x24], edx
mov ecx, dword [esi + 0xc]
mov dword [esp + 0x28], ecx
mov eax, dword [esi + 0x10]
mov dword [esp + 0x2c], eax
mov eax, dword [esi + 0x14]
mov dword [esp + 0x30], eax
mov eax, dword [esi + 0x18]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x34], eax
mov eax, dword [esi]
test eax, eax
je 0x67096a8b
cmp eax, 0xffffffff
je 0x67096aa0
mov eax, ebx
lock xadd dword [esi], eax
setne al
test al, al
jne 0x67096a98
mov esi, dword [esp + 0x3c]
push 4
push 2
push esi
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x7c]
test edx, edx
jne 0x67096a08
cmp ecx, 0x80000000
jne 0x67096a08
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
test ecx, ecx
je 0x67096ad7
cmp ecx, 0xffffffff
je 0x67096ae4
lock xadd dword [eax], ebx
dec ebx
setne al
test al, al
jne 0x67096ae4
mov eax, dword [esp + 0x1c]
push 4
push 2
push eax
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
mov eax, edi
mov ecx, dword [esp + 0x5c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret 0x14
Function at 0x670994d0
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x6722faf8
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
mov eax, dword [0x67463180]
xor eax, esp
mov dword [esp + 0x28], eax
push esi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0x34]
mov dword fs:[0], eax
mov esi, dword [esp + 0x44]
lea eax, [esp + 0x10]
push 0xf
push eax
push 0x28
push dword [ecx]
mov dword [esp + 0x1c], 0
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x67099574
push 0xffffffffffffffff
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x10]
push eax
call sym.Qt5Core.dll_public:_static_class_QString___cdecl_QString::fromWCharArray_wchar_t_const___int_
add esp, 0xc
push eax
mov ecx, esi
mov dword [esp + 0x40], 0
call sym.Qt5Core.dll_public:_void___thiscall_QVariant::constructor_class_QString_const__
mov eax, dword [esp + 8]
mov ecx, dword [eax]
test ecx, ecx
je 0x67099565
cmp ecx, 0xffffffff
je 0x67099581
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x67099581
mov eax, dword [esp + 8]
push 4
push 2
push eax
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
jmp 0x67099581
mov dword [esi + 8], 0x80000000
mov dword [esi], 0
mov eax, esi
mov ecx, dword [esp + 0x34]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.67226d38
add esp, 0x38
ret 4
Function at 0x67099e20
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x6722fc78
mov eax, dword fs:[0]
push eax
sub esp, 0x14
mov eax, dword [0x67463180]
xor eax, esp
mov dword [esp + 0x10], eax
push esi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0x1c]
mov dword fs:[0], eax
mov esi, dword [esp + 0x2c]
lea eax, [esp + 0x10]
push 4
push eax
push 0x100c
push dword [ecx]
mov dword [esp + 0x1c], 0
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x67099ed3
push 0xffffffffffffffff
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x10]
push eax
call sym.Qt5Core.dll_public:_static_class_QString___cdecl_QString::fromWCharArray_wchar_t_const___int_
add esp, 0xc
push 0xa
push 0
mov ecx, eax
mov dword [esp + 0x2c], 0
call sym.Qt5Core.dll_public:_unsigned_int___thiscall_QString::toUInt_bool___int_const
inc eax
mov ecx, esi
push eax
call sym.Qt5Core.dll_public:_void___thiscall_QVariant::constructor_unsigned_int_
mov eax, dword [esp + 8]
mov ecx, dword [eax]
test ecx, ecx
je 0x67099ec4
cmp ecx, 0xffffffff
je 0x67099edc
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x67099edc
mov eax, dword [esp + 8]
push 4
push 2
push eax
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
jmp 0x67099edc
push 1
mov ecx, esi
call sym.Qt5Core.dll_public:_void___thiscall_QVariant::constructor_int_
mov eax, esi
mov ecx, dword [esp + 0x1c]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [esp + 0x10]
xor ecx, esp
call fcn.67226d38
add esp, 0x20
ret 4
Function at 0x67099f00
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x6722fcab
mov eax, dword fs:[0]
push eax
sub esp, 0x98
push ebx
push esi
push edi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0xa8]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [esp + 0xc0]
mov esi, 0x40
test eax, eax
mov dword [esp + 0x14], 0
cmovne esi, eax
mov dword [esp + 0x1c], esi
cmp esi, 0x40
jle 0x67099f78
lea eax, [esi + esi]
push eax
call dword [0x6724833c]
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
jne 0x67099f72
call sym.Qt5Core.dll_void___cdecl_qBadAlloc_void_
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x18], esi
jmp 0x67099f88
lea eax, [esp + 0x28]
mov dword [esp + 0x18], 0x40
mov dword [esp + 0x20], eax
mov ebx, dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
push esi
mov esi, dword [esp + 0xc0]
push eax
push esi
push dword [edi]
mov dword [esp + 0xc0], 0
call ebx
test eax, eax
jne 0x67099fba
mov esi, dword [esp + 0xb8]
mov dword [esi], sym.Qt5Core.dll_struct_QArrayData_const__const_const_QArrayData::shared_null
jmp 0x6709a038
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x6709a022
push 0
push 0
push esi
push dword [edi]
call ebx
mov ecx, eax
test ecx, ecx
jne 0x67099fe3
mov esi, dword [esp + 0xb8]
mov dword [esi], sym.Qt5Core.dll_struct_QArrayData_const__const_const_QArrayData::shared_null
jmp 0x6709a038
cmp ecx, dword [esp + 0x18]
lea edx, [esp + 0x10]
lea eax, [esp + 0x18]
mov dword [esp + 0x10], ecx
cmovge eax, edx
push dword [eax]
push ecx
lea ecx, [esp + 0x20]
call fcn.6709b490
push dword [esp + 0x1c]
push dword [esp + 0x24]
push esi
push dword [edi]
call ebx
test eax, eax
jne 0x6709a022
mov esi, dword [esp + 0xb8]
mov dword [esi], sym.Qt5Core.dll_struct_QArrayData_const__const_const_QArrayData::shared_null
jmp 0x6709a038
mov esi, dword [esp + 0xb8]
push 0xffffffffffffffff
push dword [esp + 0x24]
push esi
call sym.Qt5Core.dll_public:_static_class_QString___cdecl_QString::fromWCharArray_wchar_t_const___int_
add esp, 0xc
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x28]
cmp ecx, eax
je 0x6709a04e
push ecx
call dword [0x67248338]
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0xa8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0xa4
ret 0xc
Function at 0x6709a750
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x67235068
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push esi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
push 2
lea eax, [esp + 0x10]
mov dword [esp + 0x14], 0
push eax
push 0xd
push dword [ecx]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x6709a84b
push 0xffffffffffffffff
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x10]
push eax
call sym.Qt5Core.dll_public:_static_class_QString___cdecl_QString::fromWCharArray_wchar_t_const___int_
add esp, 0xc
push 0x672c2c2c
push 1
lea ecx, [esp + 0x10]
mov dword [esp + 0x24], 0
call sym.Qt5Core.dll_public:_bool___thiscall_QString::operator_class_QLatin1String_const
test al, al
je 0x6709a815
mov esi, dword [esp + 0x24]
mov ecx, esi
push 1
call sym.Qt5Core.dll_public:_void___thiscall_QVariant::constructor_int_
mov eax, dword [esp + 8]
mov ecx, dword [eax]
test ecx, ecx
je 0x6709a7f3
cmp ecx, 0xffffffff
je 0x6709a800
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6709a800
mov eax, dword [esp + 8]
push 4
push 2
push eax
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
mov eax, esi
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop esi
add esp, 0x18
ret 4
mov eax, dword [esp + 8]
mov dword [esp + 0x1c], 0xffffffff
mov ecx, dword [eax]
test ecx, ecx
je 0x6709a83e
cmp ecx, 0xffffffff
je 0x6709a84b
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6709a84b
mov eax, dword [esp + 8]
push 4
push 2
push eax
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
mov ecx, dword [esp + 0x24]
push 0
call sym.Qt5Core.dll_public:_void___thiscall_QVariant::constructor_int_
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop esi
add esp, 0x18
ret 4
Function at 0x6709ac80
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x6722faf8
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
mov eax, dword [0x67463180]
xor eax, esp
mov dword [esp + 0x28], eax
push esi
mov eax, dword [0x67463180]
xor eax, esp
push eax
lea eax, [esp + 0x34]
mov dword fs:[0], eax
mov esi, dword [esp + 0x44]
lea eax, [esp + 0x10]
push 0xf
push eax
push 0x29
push dword [ecx]
mov dword [esp + 0x1c], 0
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x6709ad24
push 0xffffffffffffffff
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x10]
push eax
call sym.Qt5Core.dll_public:_static_class_QString___cdecl_QString::fromWCharArray_wchar_t_const___int_
add esp, 0xc
push eax
mov ecx, esi
mov dword [esp + 0x40], 0
call sym.Qt5Core.dll_public:_void___thiscall_QVariant::constructor_class_QString_const__
mov eax, dword [esp + 8]
mov ecx, dword [eax]
test ecx, ecx
je 0x6709ad15
cmp ecx, 0xffffffff
je 0x6709ad31
or ecx, 0xffffffff
lock xadd dword [eax], ecx
setne al
test al, al
jne 0x6709ad31
mov eax, dword [esp + 8]
push 4
push 2
push eax
call sym.Qt5Core.dll_public:_static_void___cdecl_QArrayData::deallocate_struct_QArrayData___unsigned_int__unsigned_int_
add esp, 0xc
jmp 0x6709ad31
mov dword [esi + 8], 0x80000000
mov dword [esi], 0
mov eax, esi
mov ecx, dword [esp + 0x34]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.67226d38
add esp, 0x38
ret 4

Function at 0x6709b63e
Capabilities:
Get geographical location

Disassembly:
sub esp, 0x2c
mov eax, dword [0x67463180]
xor eax, esp
mov dword [esp + 0x28], eax
push esi
mov esi, ecx
cmp dword [esi + 4], 0
jne 0x6709b717
push 8
lea eax, [esp + 8]
push eax
push 0x1014
push dword [esi]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
jne 0x6709b67f
mov dword [esi + 4], 3
mov eax, 3
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.67226d38
add esp, 0x2c
ret
mov ax, word [esp + 4]
cmp ax, 0x31
jne 0x6709b6a4
mov dword [esi + 4], 3
mov eax, dword [esi + 4]
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.67226d38
add esp, 0x2c
ret
cmp ax, 0x30
jne 0x6709b6c4
mov dword [esi + 4], 1
mov eax, dword [esi + 4]
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.67226d38
add esp, 0x2c
ret
cmp ax, 0x32
jne 0x6709b6e4
mov dword [esi + 4], 2
mov eax, dword [esi + 4]
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.67226d38
add esp, 0x2c
ret
push 0xb
lea eax, [esp + 0x18]
push eax
push 0x13
push dword [esi]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x6709b663
movzx ecx, word [esp + 0x14]
xor edx, edx
movzx eax, word [esp + 4]
add ecx, 2
cmp eax, ecx
setne dl
add edx, 2
mov dword [esi + 4], edx
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x2c]
pop esi
xor ecx, esp
call fcn.67226d38
add esp, 0x2c
ret