Function at 0x406e50
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov ebx, ecx
sub esp, 0x36c
mov ecx, dword [ebp + 8]
call dword [method.MemuInterface.adjustConfig__]
mov esi, dword [ebx + 0x180]
mov eax, dword [ebx + 0x178]
mov edi, dword [ebx + 0x18c]
mov edx, dword [sym.imp.Qt5Core.dll_QArrayData::shared_null]
mov dword [ebp - 0x354], esi
mov esi, dword [ebx + 0x184]
mov dword [ebp - 0x350], eax
mov eax, dword [ebx + 0x17c]
mov dword [ebp - 0x344], edi
mov dword [ebp - 0x32c], edx
mov dword [ebp - 0x358], esi
mov esi, dword [ebx + 0x188]
test eax, eax
mov dword [ebp - 0x348], esi
mov esi, dword [ebx + 0x190]
mov dword [ebp - 0x34c], esi
jne 0x407920
mov eax, dword [ebp - 0x350]
test eax, eax
jne 0x407d40
mov eax, dword [ebp - 0x358]
test eax, eax
jne 0x407ec0
mov eax, dword [ebp - 0x354]
test eax, eax
jne 0x4078b0
mov edi, dword [ebp - 0x348]
test edi, edi
jne 0x4075e0
mov esi, dword [ebp - 0x344]
test esi, esi
jne 0x407360
mov ebx, dword [ebp - 0x34c]
test ebx, ebx
je 0x407217
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x218], 0
mov dword [esp + 4], 0xb
mov dword [esp], 0x51917d
mov ebx, dword [method.QString.fromAscii_helper_char_const__int_]
and eax, 0xc0000000
mov dword [ebp - 0x210], eax
mov byte [ebp - 0x20d], pe_nt_image_headers32
call ebx
mov dword [ebp - 0x2f0], eax
mov dword [esp + 4], 0xa
mov dword [esp], 0x519172
call ebx
mov dword [ebp - 0x2f4], eax
lea eax, [ebp - 0x2f4]
lea edi, [ebp - 0x2f0]
lea esi, [ebp - 0x218]
mov dword [ebp - 0x33c], eax
call dword [method.MemuConfig.getInstance__]
lea ecx, [ebp - 0x2f4]
lea ebx, [ebp - 0x118]
mov dword [esp + 0xc], esi
mov dword [esp + 8], edi
mov dword [esp], eax
mov dword [ebp - 0x33c], ecx
mov dword [esp + 4], ecx
mov ecx, ebx
call dword [method.MemuConfig.getMemuConfig_QString_const__QString_const__QVariant_const_]
lea eax, [ebp - 0x2f8]
sub esp, 0x10
mov dword [esp], ebx
mov dword [ebp - 0x340], eax
mov ecx, eax
call dword [method.QVariant.toString___const]
mov eax, dword [method.QVariant.QVariant__]
sub esp, 4
mov ecx, ebx
mov dword [ebp - 0x35c], eax
call eax
mov eax, dword [ebp - 0x2f4]
mov edx, dword [eax]
test edx, edx
jne 0x407270
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x2f0]
mov edx, dword [eax]
test edx, edx
jne 0x407333
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov ecx, esi
mov eax, dword [ebp - 0x35c]
call eax
call dword [method.StaticDBManager.getDbManager__]
mov ecx, dword [ebp - 0x340]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov ecx, edi
call dword [method.StaticDBManager.getRandomOperator_QString_const_]
xor eax, eax
mov edi, esi
mov ecx, 0x40
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x284]
lea esi, [ebp - 0x218]
sub esp, 8
mov dword [esp], esi
mov dword [esp + 4], eax
call dword [sym.imp.libmemuqt.dll_genImei_char__int_]
xor eax, eax
mov edi, ebx
mov ecx, 0x40
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x2ec]
lea ebx, [ebp - 0x118]
mov dword [esp], ebx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x2f0]
mov dword [esp + 4], eax
call dword [sym.imp.libmemuqt.dll_genImsi_char__int__int_]
mov edi, dword [ebp - 0x33c]
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov dword [esp], edi
call dword [sym.imp.libmemuqt.dll_genAndroidId_char__char_]
mov dword [esp + 4], 0x10
mov dword [esp], edi
lea ecx, [ebp - 0x304]
call dword [method.QString.left_int__const]
mov edx, dword [ebp - 0x2f4]
mov eax, dword [ebp - 0x304]
sub esp, 8
mov ecx, dword [edx]
mov dword [ebp - 0x2f4], eax
mov dword [ebp - 0x304], edx
test ecx, ecx
jne 0x407310
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], edx
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x2f4]
mov edx, dword [eax + 4]
lea ebx, [ebp - 0x300]
mov dword [esp + 8], edx
add eax, dword [eax + 0xc]
mov dword [esp], ebx
mov dword [esp + 4], eax
call dword [method.QString.toLocal8Bit_helper_QChar_const__int_]
mov eax, dword [ebp - 0x300]
cmp dword [eax], 1
jbe 0x408040
movsx edx, byte [eax + 0xb]
mov ecx, ebx
shr edx, 0x1f
mov dword [esp + 4], edx
mov eax, dword [eax + 4]
add eax, 1
mov dword [esp], eax
call dword [method.QByteArray.reallocData_unsigned_int__QFlags_QArrayData::AllocationOption__]
mov eax, dword [ebp - 0x300]
sub esp, 8
mov edx, dword [eax + 0xc]
add eax, edx
mov ecx, dword [ebp + 8]
mov dword [esp], eax
call dword [method.MemuInterface.setAndroidId_char_const_]
mov eax, dword [ebp - 0x300]
sub esp, 4
mov edx, dword [eax]
test edx, edx
jne 0x4072e3
mov dword [esp + 8], 4
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov dword [esp], 1
mov ecx, dword [ebp + 8]
call dword [method.MemuInterface.setResetGaId_int_]
mov eax, dword [ebp - 0x2f4]
sub esp, 4
mov edx, dword [eax]
test edx, edx
jne 0x4072c0
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x2f8]
mov edx, dword [eax]
test edx, edx
jne 0x407293
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x32c]
mov edx, dword [eax]
test edx, edx
jne 0x407250
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 4
cmp edx, 0xffffffff
je 0x40723c
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x40723c
mov eax, dword [ebp - 0x32c]
jmp 0x407223
cmp edx, 0xffffffff
je 0x40700f
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x40700f
mov eax, dword [ebp - 0x2f4]
jmp 0x406ff6
cmp edx, 0xffffffff
je 0x407217
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407217
mov eax, dword [ebp - 0x2f8]
jmp 0x4071fe
cmp edx, 0xffffffff
je 0x4071ee
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x4071ee
mov eax, dword [ebp - 0x2f4]
jmp 0x4071d5
cmp edx, 0xffffffff
je 0x4071b2
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x4071b2
mov eax, dword [ebp - 0x300]
jmp 0x407199
cmp ecx, 0xffffffff
je 0x407124
lock sub dword [edx], 1
setne al
test al, al
jne 0x40711e
mov edx, dword [ebp - 0x304]
jmp 0x407105
cmp edx, 0xffffffff
je 0x407038
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407038
mov eax, dword [ebp - 0x2f0]
jmp 0x40701f
mov dword [esp + 4], 0
mov dword [esp], 0x51918d
mov ebx, dword [method.QString.fromAscii_helper_char_const__int_]
call ebx
mov dword [ebp - 0x118], eax
mov dword [esp + 4], 1
mov dword [esp], 0x519189
call ebx
mov dword [ebp - 0x218], eax
mov dword [esp + 4], 0
mov dword [esp], 0x51918d
call ebx
mov dword [ebp - 0x2f4], eax
mov dword [esp + 4], 1
mov dword [esp], 0x51918b
call ebx
mov dword [ebp - 0x2f8], eax
lea eax, [ebp - 0x30c]
mov dword [esp], eax
call dword [sym.imp.libmemuqt.dll_generateMacAddr__]
lea eax, [ebp - 0x2f4]
mov dword [esp + 8], 1
lea ecx, [ebp - 0x30c]
mov edi, dword [method.QString.replace_QString_const__QString_const__Qt::CaseSensitivity_]
lea esi, [ebp - 0x218]
lea ebx, [ebp - 0x118]
mov dword [ebp - 0x33c], eax
mov dword [esp + 4], eax
lea eax, [ebp - 0x2f8]
mov dword [ebp - 0x340], eax
mov dword [esp], eax
call edi
sub esp, 0xc
mov ecx, eax
mov dword [esp + 8], 1
mov dword [esp + 4], ebx
mov dword [esp], esi
call edi
sub esp, 0xc
lea ecx, [ebp - 0x308]
mov dword [esp], eax
call dword [method.QString.trimmed___const]
lea edi, [ebp - 0x2f0]
lea eax, [ebp - 0x308]
sub esp, 4
mov dword [esp + 4], eax
mov dword [esp], edi
call dword [method.QString.toUtf8_helper_QString_const_]
mov eax, dword [ebp - 0x2f0]
lea edx, [ebp - 0x32d]
lea ecx, [ebp - 0x2fc]
mov dword [esp + 8], edx
mov edx, dword [eax + 4]
mov dword [esp + 4], edx
add eax, dword [eax + 0xc]
mov dword [esp], eax
call fcn.004df5d8
mov eax, dword [ebp - 0x2f0]
sub esp, 0xc
mov edx, dword [eax]
test edx, edx
je 0x407ff0
cmp edx, 0xffffffff
je 0x4074a5
lock sub dword [eax], 1
setne dl
test dl, dl
je 0x407fe2
mov eax, dword [ebp - 0x308]
mov edx, dword [eax]
test edx, edx
jne 0x408019
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x30c]
mov edx, dword [eax]
test edx, edx
jne 0x408280
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x2f8]
mov edx, dword [eax]
test edx, edx
jne 0x408253
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x2f4]
mov edx, dword [eax]
test edx, edx
jne 0x408230
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x218]
mov edx, dword [eax]
test edx, edx
jne 0x408203
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x118]
mov edx, dword [eax]
test edx, edx
jne 0x4081e0
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x2fc]
mov ecx, dword [ebp + 8]
mov dword [esp], eax
call dword [method.MemuInterface.setMacAddress_char_const_]
mov ecx, dword [ebp - 0x2fc]
sub esp, 4
mov eax, 0xffffffff
lock xadd dword [ecx - 4], eax
test eax, eax
jg 0x406f0f
sub ecx, 0xc
mov dword [esp], ebx
call fcn.004df5e0
sub esp, 4
jmp 0x406f0f
lea ebx, [ebp - 0x31c]
mov dword [esp], ebx
call dword [sym.imp.libmemuqt.dll_genWifiName__]
lea eax, [ebp - 0x2f8]
mov dword [esp + 4], ebx
mov edi, dword [method.QString.toUtf8_helper_QString_const_]
mov dword [ebp - 0x340], eax
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x2f8]
lea edx, [ebp - 0x32f]
lea ecx, [ebp - 0x2fc]
mov dword [esp + 8], edx
mov edx, dword [eax + 4]
mov dword [esp + 4], edx
add eax, dword [eax + 0xc]
mov dword [esp], eax
call fcn.004df5d8
mov eax, dword [ebp - 0x2f8]
sub esp, 0xc
mov edx, dword [eax]
test edx, edx
je 0x407f20
cmp edx, 0xffffffff
je 0x407659
lock sub dword [eax], 1
setne dl
test dl, dl
je 0x407f13
mov eax, dword [ebp - 0x31c]
mov edx, dword [eax]
test edx, edx
jne 0x407f49
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x2fc]
mov ecx, dword [ebp + 8]
mov dword [esp], eax
call dword [method.MemuInterface.setSsid_char_const_]
sub esp, 4
mov ebx, dword [method.QString.fromAscii_helper_char_const__int_]
mov dword [esp + 4], 1
mov dword [esp], 0x519189
call ebx
mov dword [ebp - 0x118], eax
mov dword [esp + 4], 1
mov dword [esp], 0x51918b
call ebx
mov dword [ebp - 0x218], eax
lea eax, [ebp - 0x318]
mov dword [esp], eax
call dword [sym.imp.libmemuqt.dll_generateMacAddr__]
lea ebx, [ebp - 0x314]
lea esi, [ebp - 0x218]
lea eax, [ebp - 0x318]
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov dword [esp], eax
mov ecx, ebx
call dword [method.QString.split_QString_const__QString::SplitBehavior__Qt::CaseSensitivity__const]
mov eax, dword [ebp - 0x118]
sub esp, 0x10
mov edx, dword [eax + 4]
mov dword [esp + 0xc], edx
add eax, dword [eax + 0xc]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
lea eax, [ebp - 0x310]
mov dword [esp], eax
call dword [method.QtPrivate.QStringList_join_QStringList_const__QChar_const__int_]
lea eax, [ebp - 0x2f4]
lea ecx, [ebp - 0x310]
mov dword [ebp - 0x33c], eax
mov dword [esp + 4], ecx
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x2f4]
lea edx, [ebp - 0x32e]
lea edi, [ebp - 0x2f0]
mov dword [esp + 8], edx
mov ecx, edi
mov edx, dword [eax + 4]
mov dword [esp + 4], edx
add eax, dword [eax + 0xc]
mov dword [esp], eax
call fcn.004df5d8
mov eax, dword [ebp - 0x2f4]
sub esp, 0xc
mov edx, dword [eax]
test edx, edx
jne 0x4080f0
mov dword [esp + 8], 4
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x310]
mov edx, dword [eax]
test edx, edx
jne 0x4080c3
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov ecx, ebx
call fcn.004fa5d0
mov eax, dword [ebp - 0x318]
mov edx, dword [eax]
test edx, edx
jne 0x4080a0
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x218]
mov edx, dword [eax]
test edx, edx
jne 0x408074
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x118]
mov edx, dword [eax]
test edx, edx
jne 0x408051
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x2f0]
mov ecx, dword [ebp + 8]
mov dword [esp], eax
call dword [method.MemuInterface.setVmBssid_char_const_]
mov ecx, dword [ebp - 0x2f0]
sub esp, 4
mov eax, 0xffffffff
lock xadd dword [ecx - 4], eax
test eax, eax
jle 0x408403
mov ecx, dword [ebp - 0x2fc]
mov eax, 0xffffffff
lock xadd dword [ecx - 4], eax
test eax, eax
jg 0x406f01
lea ebx, [ebp - 0x118]
sub ecx, 0xc
mov dword [esp], ebx
call fcn.004df5e0
sub esp, 4
jmp 0x406f01
mov eax, dword [ebp + 8]
lea esi, [ebp - 0x218]
mov ecx, esi
mov dword [esp], eax
call dword [method.MemuInterface.getOperatorInfo__]
lea edi, [ebp - 0x118]
xor eax, eax
mov ecx, 0x40
lea ebx, [ebp - 0x118]
sub esp, 4
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1ac]
mov dword [esp], ebx
mov dword [esp + 4], eax
call dword [sym.imp.libmemuqt.dll_genLinenum_char__int_]
mov dword [esp], ebx
mov ecx, dword [ebp + 8]
call dword [method.MemuInterface.setVmLinenum_char_const_]
sub esp, 4
mov ecx, dword [ebp + 8]
mov dword [esp], 1
call dword [method.MemuInterface.setShowPhoneNumber_int_]
sub esp, 4
jmp 0x406ef3
mov eax, dword [ebp + 8]
lea edi, [ebp - 0x2f0]
mov ecx, edi
mov dword [esp], eax
call dword [method.MemuInterface.getOperatorInfo__]
sub esp, 4
mov ecx, dword [ebp + 8]
mov ebx, dword [method.MemuInterface.getCountryCode__]
call ebx
cmp byte [eax], 0
jne 0x4082f3
mov eax, dword [ebp - 0x32c]
mov eax, dword [eax + 4]
test eax, eax
jne 0x407ac6
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x118], 0
mov dword [esp + 4], 0xb
mov dword [esp], 0x51917d
mov ebx, dword [method.QString.fromAscii_helper_char_const__int_]
and eax, 0xc0000000
mov dword [ebp - 0x110], eax
mov byte [ebp - 0x10d], pe_nt_image_headers32
call ebx
mov dword [ebp - 0x2f4], eax
mov dword [esp + 4], 0xa
mov dword [esp], 0x519172
call ebx
mov dword [ebp - 0x2f8], eax
lea eax, [ebp - 0x2f4]
lea ebx, [ebp - 0x118]
mov dword [ebp - 0x33c], eax
lea eax, [ebp - 0x2f8]
mov dword [ebp - 0x340], eax
call dword [method.MemuConfig.getInstance__]
lea edi, [ebp - 0x2f4]
lea esi, [ebp - 0x218]
mov dword [esp + 0xc], ebx
mov dword [esp], eax
mov dword [ebp - 0x33c], edi
mov dword [esp + 8], edi
lea edi, [ebp - 0x2f8]
mov ecx, esi
mov dword [ebp - 0x340], edi
mov dword [esp + 4], edi
call dword [method.MemuConfig.getMemuConfig_QString_const__QString_const__QVariant_const_]
sub esp, 0x10
lea ecx, [ebp - 0x328]
mov dword [esp], esi
call dword [method.QVariant.toString___const]
mov eax, dword [ebp - 0x32c]
mov edx, dword [ebp - 0x328]
sub esp, 4
mov dword [ebp - 0x32c], edx
mov edx, dword [eax]
mov dword [ebp - 0x328], eax
test edx, edx
jne 0x4083b4
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [method.QVariant.QVariant__]
mov ecx, esi
mov dword [ebp - 0x35c], eax
call eax
mov eax, dword [ebp - 0x2f8]
mov edx, dword [eax]
test edx, edx
jne 0x408391
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x2f4]
mov edx, dword [eax]
test edx, edx
jne 0x4083e0
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov ecx, ebx
mov eax, dword [ebp - 0x35c]
call eax
call dword [method.StaticDBManager.getDbManager__]
lea esi, [ebp - 0x218]
lea edx, [ebp - 0x32c]
mov dword [esp], eax
mov dword [esp + 4], edx
mov ecx, esi
call dword [method.StaticDBManager.getRandomOperator_QString_const_]
sub esp, 8
mov ecx, dword [ebp + 8]
mov dword [esp], esi
call dword [method.MemuInterface.setOperatorInfo_MEmuOperatorInfoData_const_]
lea edi, [ebp - 0x118]
mov ecx, 0x40
xor eax, eax
mov esi, dword [ebp - 0x284]
lea ebx, [ebp - 0x118]
sub esp, 4
rep stosd dword es:[edi], eax
mov dword [esp], ebx
mov dword [esp + 4], esi
call dword [sym.imp.libmemuqt.dll_genImei_char__int_]
mov dword [esp], ebx
mov ecx, dword [ebp + 8]
call dword [method.MemuInterface.setVmImei_char_const_]
xor eax, eax
mov ecx, 0x40
mov edi, ebx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x2ec]
sub esp, 4
mov dword [esp], ebx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x2f0]
mov dword [esp + 4], eax
call dword [sym.imp.libmemuqt.dll_genImsi_char__int__int_]
mov dword [esp], ebx
mov ecx, dword [ebp + 8]
call dword [method.MemuInterface.setVmImsi_char_const_]
mov ecx, 0x40
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
sub esp, 4
mov ecx, dword [ebp + 8]
call dword [method.MemuInterface.getVmImsi__]
mov edi, eax
mov ecx, dword [ebp + 8]
call dword [method.MemuInterface.getVmImei__]
lea ecx, [ebp - 0x2f4]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov dword [ebp - 0x33c], ecx
mov edi, ecx
mov dword [esp], ecx
call dword [sym.imp.libmemuqt.dll_genAndroidId_char__char_]
mov dword [esp + 4], 0x10
mov dword [esp], edi
lea ecx, [ebp - 0x324]
call dword [method.QString.left_int__const]
mov edx, dword [ebp - 0x2f4]
mov eax, dword [ebp - 0x324]
sub esp, 8
mov ecx, dword [edx]
mov dword [ebp - 0x2f4], eax
mov dword [ebp - 0x324], edx
test ecx, ecx
je 0x407fc4
cmp ecx, 0xffffffff
je 0x407bfb
lock sub dword [edx], 1
setne al
test al, al
je 0x407fbe
mov eax, dword [ebp - 0x2f4]
mov edx, dword [eax + 4]
lea edi, [ebp - 0x320]
mov dword [esp + 8], edx
add eax, dword [eax + 0xc]
mov dword [esp], edi
mov dword [esp + 4], eax
call dword [method.QString.toLocal8Bit_helper_QChar_const__int_]
mov eax, dword [ebp - 0x320]
cmp dword [eax], 1
jbe 0x408380
movsx edx, byte [eax + 0xb]
mov ecx, edi
shr edx, 0x1f
mov dword [esp + 4], edx
mov eax, dword [eax + 4]
add eax, 1
mov dword [esp], eax
call dword [method.QByteArray.reallocData_unsigned_int__QFlags_QArrayData::AllocationOption__]
mov eax, dword [ebp - 0x320]
sub esp, 8
mov edx, dword [eax + 0xc]
add eax, edx
mov ecx, dword [ebp + 8]
mov dword [esp], eax
call dword [method.MemuInterface.setAndroidId_char_const_]
mov eax, dword [ebp - 0x320]
sub esp, 4
mov edx, dword [eax]
test edx, edx
jne 0x4082d0
mov dword [esp + 8], 4
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov ecx, 0x40
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
mov dword [esp + 4], 0x56
mov dword [esp], ebx
call dword [sym.imp.libmemuqt.dll_genSimserial_char__int_]
mov dword [esp], ebx
mov ecx, dword [ebp + 8]
call dword [method.MemuInterface.setSimserial_char_const_]
mov ecx, 0x40
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
sub esp, 4
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [sym.imp.libmemuqt.dll_genLinenum_char__int_]
mov dword [esp], ebx
mov ecx, dword [ebp + 8]
call dword [method.MemuInterface.setVmLinenum_char_const_]
sub esp, 4
mov ecx, dword [ebp + 8]
mov dword [esp], 1
call dword [method.MemuInterface.setShowPhoneNumber_int_]
sub esp, 4
mov ecx, dword [ebp + 8]
mov dword [esp], 1
call dword [method.MemuInterface.setResetGaId_int_]
mov eax, dword [ebp - 0x2f4]
sub esp, 4
mov edx, dword [eax]
test edx, edx
jne 0x4082a3
mov dword [esp], eax
mov dword [esp + 8], 4
mov dword [esp + 4], 2
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x350]
test eax, eax
je 0x406ed7
nop
lea esi, [esi]
call dword [method.StaticDBManager.getDbManager__]
lea ebx, [ebp - 0x118]
lea edx, [ebp - 0x32c]
mov dword [esp + 8], 0
mov dword [esp], eax
mov dword [esp + 4], edx
mov ecx, ebx
call dword [method.StaticDBManager.getRandomDevice_QString_const__bool_]
sub esp, 0xc
mov ecx, dword [ebp + 8]
mov dword [esp], 0
call dword [method.MemuInterface.setDeviceType_int_]
sub esp, 4
mov ecx, dword [ebp + 8]
mov dword [esp], ebx
call dword [method.MemuInterface.setDeviceInfos_DeviceEntity_const_]
mov eax, dword [ebp - 0x100]
sub esp, 4
mov edx, dword [eax]
test edx, edx
je 0x407f72
cmp edx, 0xffffffff
je 0x407db2
lock sub dword [eax], 1
setne dl
test dl, dl
je 0x407f6c
mov eax, dword [ebp - 0x104]
mov edx, dword [eax]
test edx, edx
jne 0x407f9b
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x108]
mov edx, dword [eax]
test edx, edx
jne 0x4081b3
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x10c]
mov edx, dword [eax]
test edx, edx
jne 0x408190
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x110]
mov edx, dword [eax]
test edx, edx
jne 0x408163
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x114]
mov edx, dword [eax]
test edx, edx
jne 0x408140
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x118]
mov edx, dword [eax]
test edx, edx
jne 0x408113
mov dword [esp], eax
mov dword [esp + 8], 4
mov dword [esp + 4], 2
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x358]
test eax, eax
je 0x406ee5
lea esi, [esi]
lea edi, [edi]
mov eax, dword [ebp + 8]
lea esi, [ebp - 0x218]
mov ecx, esi
mov dword [esp], eax
call dword [method.MemuInterface.getOperatorInfo__]
lea edi, [ebp - 0x118]
xor eax, eax
mov ecx, 0x40
lea ebx, [ebp - 0x118]
sub esp, 4
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1ac]
mov dword [esp], ebx
mov dword [esp + 4], eax
call dword [sym.imp.libmemuqt.dll_genImei_char__int_]
mov dword [esp], ebx
mov ecx, dword [ebp + 8]
call dword [method.MemuInterface.setVmImei_char_const_]
sub esp, 4
jmp 0x406ee5
mov eax, dword [ebp - 0x2f8]
lea esi, [esi]
mov dword [esp], eax
mov dword [esp + 8], 4
mov dword [esp + 4], 1
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x31c]
mov edx, dword [eax]
test edx, edx
je 0x407669
cmp edx, 0xffffffff
je 0x407682
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407682
mov eax, dword [ebp - 0x31c]
jmp 0x407669
mov eax, dword [ebp - 0x100]
mov dword [esp], eax
mov dword [esp + 8], 4
mov dword [esp + 4], 2
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x104]
mov edx, dword [eax]
test edx, edx
je 0x407dc2
cmp edx, 0xffffffff
je 0x407ddb
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407ddb
mov eax, dword [ebp - 0x104]
jmp 0x407dc2
mov edx, dword [ebp - 0x324]
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], edx
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
jmp 0x407bf5
mov eax, dword [ebp - 0x2f0]
nop
lea esi, [esi]
mov dword [esp], eax
mov dword [esp + 8], 4
mov dword [esp + 4], 1
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
mov eax, dword [ebp - 0x308]
mov edx, dword [eax]
test edx, edx
je 0x4074b5
cmp edx, 0xffffffff
je 0x4074ce
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x4074ce
mov eax, dword [ebp - 0x308]
jmp 0x4074b5
mov edx, dword [eax + 0xc]
cmp edx, 0x10
jne 0x407150
jmp 0x407178
cmp edx, 0xffffffff
je 0x407851
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407851
mov eax, dword [ebp - 0x118]
jmp 0x407838
cmp edx, 0xffffffff
je 0x407828
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407828
mov eax, dword [ebp - 0x218]
jmp 0x40780f
cmp edx, 0xffffffff
je 0x4077ff
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x4077ff
mov eax, dword [ebp - 0x318]
jmp 0x4077e6
cmp edx, 0xffffffff
je 0x4077cf
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x4077cf
mov eax, dword [ebp - 0x310]
jmp 0x4077b6
cmp edx, 0xffffffff
je 0x4077a6
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x4077a6
mov eax, dword [ebp - 0x2f4]
jmp 0x40778d
cmp edx, 0xffffffff
je 0x406ed7
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x406ed7
mov eax, dword [ebp - 0x118]
jmp 0x407e8f
cmp edx, 0xffffffff
je 0x407e7f
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407e7f
mov eax, dword [ebp - 0x114]
jmp 0x407e66
cmp edx, 0xffffffff
je 0x407e56
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407e56
mov eax, dword [ebp - 0x110]
jmp 0x407e3d
cmp edx, 0xffffffff
je 0x407e2d
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407e2d
mov eax, dword [ebp - 0x10c]
jmp 0x407e14
cmp edx, 0xffffffff
je 0x407e04
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407e04
mov eax, dword [ebp - 0x108]
jmp 0x407deb
cmp edx, 0xffffffff
je 0x40759b
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x40759b
mov eax, dword [ebp - 0x118]
jmp 0x407582
cmp edx, 0xffffffff
je 0x407572
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407572
mov eax, dword [ebp - 0x218]
jmp 0x407559
cmp edx, 0xffffffff
je 0x407549
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407549
mov eax, dword [ebp - 0x2f4]
jmp 0x407530
cmp edx, 0xffffffff
je 0x407520
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407520
mov eax, dword [ebp - 0x2f8]
jmp 0x407507
cmp edx, 0xffffffff
je 0x4074f7
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x4074f7
mov eax, dword [ebp - 0x30c]
jmp 0x4074de
cmp edx, 0xffffffff
je 0x406ec9
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x406ec9
mov eax, dword [ebp - 0x2f4]
jmp 0x407d11
cmp edx, 0xffffffff
je 0x407c89
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407c89
mov eax, dword [ebp - 0x320]
jmp 0x407c70
mov ecx, dword [ebp + 8]
call ebx
mov ebx, eax
mov eax, 0xffffffff
test ebx, ebx
je 0x40830b
mov dword [esp], ebx
call sub.msvcrt.dll_strlen
lea edx, [ebp - 0x2fc]
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], edx
call dword [method.QString.fromUtf8_helper_char_const__int_]
mov edx, dword [ebp - 0x32c]
mov eax, dword [ebp - 0x2fc]
mov ecx, dword [edx]
mov dword [ebp - 0x32c], eax
mov dword [ebp - 0x2fc], edx
test ecx, ecx
je 0x408360
cmp ecx, 0xffffffff
je 0x407951
lock sub dword [edx], 1
setne al
test al, al
jne 0x40794b
mov edx, dword [ebp - 0x2fc]
nop
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], edx
call dword [method.QArrayData.deallocate_QArrayData__unsigned_int__unsigned_int_]
jmp 0x40794b
mov edx, dword [eax + 0xc]
cmp edx, 0x10
jne 0x407c27
jmp 0x407c4f
cmp edx, 0xffffffff
je 0x407a93
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407a93
mov eax, dword [ebp - 0x2f8]
jmp 0x407a7a
cmp edx, 0xffffffff
je 0x407a5b
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407a5b
mov eax, dword [ebp - 0x328]
jmp 0x407a42
cmp edx, 0xffffffff
je 0x407abc
lock sub dword [eax], 1
setne dl
test dl, dl
jne 0x407abc
mov eax, dword [ebp - 0x2f4]
jmp 0x407aa3
lea ebx, [ebp - 0x118]
sub ecx, 0xc
mov dword [esp], ebx
call fcn.004df5e0
sub esp, 4
jmp 0x40787e