Function at 0x40ab9f
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
push 0xc
call fcn.0043d40e
add esp, 4
mov dword [ebp - 0x1c], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx], 0x520bf7
push ebx
add ebx, 8
push ebx
push 8
call fcn.0043d40e
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
pop ebx
pop ebx
push ebx
mov eax, esp
push eax
call fcn.0040ab5a
pop ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], 0
push 0
push dword [ebp - 0x24]
mov dword [ebp - 0x28], 0
push 0
push dword [ebp - 0x28]
push dword [ebp - 0x20]
call fcn.00404177
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x38], ebx
push str.ispCMCC
mov ebx, dword [ebp - 0x38]
push dword [ebx]
push str.kpfIPHONEsysios13.3.1net
mov ebx, dword [ebp - 0x34]
push dword [ebx]
push str.kpnKUAISHOUcaver6.6ud
mov ebx, dword [ebp - 0x30]
push dword [ebx]
push str.did
push dword [ebp - 0x2c]
push str.https:__apissl.gifshow.com_rest_n_live_authStatus_appver6.6.0.992mod
mov ecx, 9
call fcn.004014a8
add esp, 0x24
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40acc9
push ebx
call fcn.0043d414
add esp, 4
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40acdd
push ebx
call fcn.0043d414
add esp, 4
pop eax
mov dword [ebp - 4], eax
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp - 0x20]
push dword [ebx]
push str.client_key56c3713ccountry_codecnlanguagezh_Hans_3Bq_3D1_2C_20en_3Bq_3D0.9token
mov ecx, 2
call fcn.004014a8
add esp, 8
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40ad17
push ebx
call fcn.0043d414
add esp, 4
pop eax
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 4]
push eax
call fcn.0040b435
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40ad3f
push ebx
call fcn.0043d414
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x20], ebx
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 0x20]
call fcn.0040a36f
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x40ad71
push ebx
call fcn.0043d414
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
mov dword [ebp - 0x20], ebx
push dword [ebp - 0xc]
push str.sig
push dword [ebp - 0x10]
push str.__NStokensig
mov ebx, dword [ebp - 0x20]
push dword [ebx]
push str.client_key56c3713ccountry_codecnlanguagezh_Hans_3Bq_3D1_2C_20en_3Bq_3D0.9token
mov ecx, 6
call fcn.004014a8
add esp, 0x18
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40adbb
push ebx
call fcn.0043d414
add esp, 4
pop eax
mov dword [ebp - 8], eax
push 5
call fcn.0040b808
mov dword [ebp - 0x20], eax
push getpeername
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x40addf
mov eax, 0x51fdcb
push eax
push 1
mov ebx, 0x43d9e0
call fcn.0043d41a
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x43f400
call fcn.0043d41a
add esp, 0x10
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
push str._r_nUser_Agent:_kwai_ios_r_nAccept_Language:_zh_Hans_CN_q1_r_nContent_Length:
push dword [ebp - 0x20]
push str.Host:_api3.gifshow.com_r_nContent_Type:_application_x_www_form_urlencoded_r_nConnection:_keep_alive_r_nAccept:_application_json_r_nX_REQUESTID:
mov ecx, 4
call fcn.004014a8
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40ae3f
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40ae4f
push ebx
call fcn.0043d414
add esp, 4
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40ae63
push ebx
call fcn.0043d414
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push 1
push 0
mov dword [ebp - 0x24], 0
push 0
push dword [ebp - 0x24]
push 8
call fcn.0043d40e
add esp, 4
mov dword [ebp - 0x28], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 0
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
mov dword [ebp - 0x30], 0
push 0
lea eax, [ebp - 0x30]
push eax
mov dword [ebp - 0x34], 0
push 0
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x38], 0
push 0
push dword [ebp - 0x38]
mov dword [ebp - 0x3c], 0
push 0
lea eax, [ebp - 0x3c]
push eax
mov dword [ebp - 0x40], 0
push 0
lea eax, [ebp - 0x40]
push eax
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
mov dword [ebp - 0x48], 0
push 0
lea eax, [ebp - 0x48]
push eax
mov dword [ebp - 0x4c], 0
push 0
lea eax, [ebp - 0x4c]
push eax
push 1
lea eax, [ebp - 0x14]
push eax
mov dword [ebp - 0x50], 0
push 0
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], 0
push 0
lea eax, [ebp - 0x54]
push eax
push 1
lea eax, [ebp - 8]
push eax
push 1
push 1
lea eax, [ebp - 4]
push eax
call fcn.0040c10f
mov dword [ebp - 0x58], eax
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x40af66
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x40af76
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40af86
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40af96
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40afa6
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40afb6
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40afc6
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x441960
call fcn.0043d41a
add esp, 0x10
call fcn.0043d414
add esp, 4
lea eax, [ebp - 0x58]
push eax
call fcn.00410ada
mov dword [ebp - 0x5c], eax
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x40b005
push ebx
call fcn.0043d414
add esp, 4
mov eax, dword [ebp - 0x5c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40b019
push ebx
call fcn.0043d414
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
push 0x20
call fcn.0043d40e
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 8
rep stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x24], 0
push 0
push dword [ebp - 0x24]
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc]
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b075
push ebx
call fcn.0043d414
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b089
push ebx
call fcn.0043d414
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b09d
push ebx
call fcn.0043d414
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b0b1
push ebx
call fcn.0043d414
add esp, 4
pop ebx
call fcn.0043d414
add esp, 4
push 1
mov eax, str.result
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x38]
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40b0e9
push ebx
call fcn.0043d414
add esp, 4
lea eax, [ebp - 0x24]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x14]
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x24]
push ebx
mov eax, dword [ebx]
call dword [eax]
call fcn.0043d414
add esp, 4
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40b11e
push ebx
call fcn.0043d414
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
push 0x520a34
push dword [ebp - 0x18]
call fcn.004013a0
add esp, 8
cmp eax, 0
jne 0x40b1a3
mov ebx, dword [0x5e07b8]
mov dword [ebp - 0x20], ebx
push dword [ebp - 0x20]
call fcn.00410c10
push getpeername
push 0
push 0x5206f2
push 0x80000301
push 0
push 9
push 0x80000301
push 0
push dword [ebp + 0xc]
push 0x20004
push 0x1601004f
push 0x52010002
push 4
mov eax, 1
mov ebx, 0x4a0e00
call fcn.0043d426
add esp, 0x34
call fcn.00407059
mov eax, 1
jmp 0x40b3bd
push 0x520f44
push dword [ebp - 0x18]
call fcn.004013a0
add esp, 8
cmp eax, 0
jne 0x40b227
mov ebx, dword [0x5e07b8]
add ebx, 4
mov dword [ebp - 0x20], ebx
push dword [ebp - 0x20]
call fcn.00410c10
push getpeername
push 0
push 0x52071c
push 0x80000301
push 0
push 9
push 0x80000301
push 0
push dword [ebp + 0xc]
push 0x20004
push 0x1601004f
push 0x52010002
push 4
mov eax, 1
mov ebx, 0x4a0e00
call fcn.0043d426
add esp, 0x34
call fcn.00407059
mov eax, 1
jmp 0x40b3bd
push 0x520a27
push dword [ebp - 0x18]
call fcn.004013a0
add esp, 8
cmp eax, 0
jne 0x40b2ab
mov ebx, dword [0x5e07b8]
add ebx, 0x18
mov dword [ebp - 0x20], ebx
push dword [ebp - 0x20]
call fcn.00410c10
push getpeername
push 0
push 0x520a2b
push 0x80000301
push 0
push 9
push 0x80000301
push 0
push dword [ebp + 0xc]
push 0x20004
push 0x1601004f
push 0x52010002
push 4
mov eax, 1
mov ebx, 0x4a0e00
call fcn.0043d426
add esp, 0x34
call fcn.00407059
mov eax, 1
jmp 0x40b3bd
push 0x520f47
push dword [ebp - 0x18]
call fcn.004013a0
add esp, 8
cmp eax, 0
jne 0x40b32f
mov ebx, dword [0x5e07b8]
add ebx, 8
mov dword [ebp - 0x20], ebx
push dword [ebp - 0x20]
call fcn.00410c10
push getpeername
push 0
push 0x520f4a
push 0x80000301
push 0
push 9
push 0x80000301
push 0
push dword [ebp + 0xc]
push 0x20004
push 0x1601004f
push 0x52010002
push 4
mov eax, 1
mov ebx, 0x4a0e00
call fcn.0043d426
add esp, 0x34
call fcn.00407059
mov eax, 1
jmp 0x40b3bd
push 0x520a23
push dword [ebp - 0x18]
call fcn.004013a0
add esp, 8
cmp eax, 0
jne 0x40b3b3
mov ebx, dword [0x5e07b8]
add ebx, 8
mov dword [ebp - 0x20], ebx
push dword [ebp - 0x20]
call fcn.00410c10
push getpeername
push 0
push 0x51fd90
push 0x80000301
push 0
push 9
push 0x80000301
push 0
push dword [ebp + 0xc]
push 0x20004
push 0x1601004f
push 0x52010002
push 4
mov eax, 1
mov ebx, 0x4a0e00
call fcn.0043d426
add esp, 0x34
call fcn.00407059
mov eax, 1
jmp 0x40b3bd
mov eax, 0
jmp 0x40b3bd
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40b3ce
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40b3de
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40b3ee
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x40b3fe
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40b40e
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40b41e
push ebx
call fcn.0043d414
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
mov eax, dword [ebx]
call dword [eax]
call fcn.0043d414
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 8