Function at 0x416ff0
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x42e142
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push ebx
push esi
push edi
mov eax, dword [0x440d84]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x20], ebx
lea eax, [ebp - 0x30]
xorps xmm0, xmm0
push eax
movlpd qword [ebp - 0x30], xmm0
call dword [sym.imp.MSVCR110.dll__time64]
add esp, 4
lea eax, [ebp - 0x28]
xorps xmm0, xmm0
lea esi, [ebx + 0xcc]
push eax
mov ecx, esi
movlpd qword [ebp - 0x28], xmm0
call fcn.00423820
test eax, eax
jne 0x41705c
push dword [ebp - 0x24]
mov ecx, esi
push dword [ebp - 0x28]
call fcn.00428100
push dword [ebp - 0x24]
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
call dword [sym.imp.MSVCR110.dll__difftime64]
add esp, 0x10
call fcn.0042c026
push 0
push 0x15180
push edx
push eax
call fcn.0042be60
mov edi, eax
lea eax, [ebp - 0x18]
push eax
mov ecx, esi
mov ebx, edx
mov dword [ebp - 0x18], 0
call fcn.00424710
mov eax, dword [ebp - 0x18]
cdq
cmp ebx, edx
jg 0x4170b2
jl 0x4170a8
cmp edi, eax
jae 0x4170b2
test ebx, ebx
jg 0x417104
jl 0x4170b2
test edi, edi
jae 0x417104
xor ebx, ebx
push str.Sensapi.DLL
mov dword [ebp - 0x1c], ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
test edi, edi
je 0x417104
push str.IsNetworkAlive
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x4170e0
lea ecx, [ebp - 0x1c]
push ecx
call eax
mov ebx, eax
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
test ebx, ebx
je 0x417104
mov ecx, dword [ebp - 0x20]
call fcn.00413110
test eax, eax
je 0x417104
push dword [ebp - 0x2c]
mov ecx, esi
push dword [ebp - 0x30]
call fcn.00428100
push 0x432c58
lea ecx, [ebp - 0x10]
call dword [sym.imp.mfc110u.dll_Ordinal_286]
lea eax, [ebp - 0x10]
push eax
mov ecx, esi
mov dword [ebp - 4], 0
call fcn.00422900
test eax, eax
jne 0x417136
push 0x440e14
lea ecx, [ebp - 0x10]
call dword [sym.imp.mfc110u.dll_Ordinal_1514]
push dword [ebp - 0x10]
push 0x435248
call fcn.00401440
add esp, 8
push 0x10
call dword [sym.imp.KERNEL32.dll_GetUserGeoID]
mov edi, dword [sym.imp.KERNEL32.dll_GetGeoInfoW]
push 0
push 0
push 0
mov ebx, eax
push 4
push ebx
call edi
xor ecx, ecx
mov esi, eax
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0042b4b0
add esp, 4
mov dword [ebp - 0x20], eax
push 0
push esi
mov esi, eax
push esi
push 4
push ebx
call edi
push esi
push str._OLREG__OLRSubmission__Country_code_s
call fcn.00401440
add esp, 8
lea ecx, [ebp - 0x14]
push 0x432c58
call dword [sym.imp.mfc110u.dll_Ordinal_286]
push esi
lea eax, [ebp - 0x14]
push 0x43454c
push eax
mov byte [ebp - 4], 1
call dword [sym.imp.mfc110u.dll_Ordinal_4754]
add esp, 0xc
lea ecx, [ebp - 0x14]
push 0x4352f0
call dword [sym.imp.mfc110u.dll_Ordinal_1683]
push esi
call sub.MSVCR110.dll_void___cdecl_operator_delete___void__
add esp, 4
lea ecx, [ebp - 0x10]
push 0
push dword [ebp - 0x14]
call dword [sym.imp.mfc110u.dll_Ordinal_4603]
xor ebx, ebx
cmp eax, 0xffffffff
lea ecx, [ebp - 0x14]
setne bl
call dword [sym.imp.mfc110u.dll_Ordinal_1039]
lea ecx, [ebp - 0x10]
call dword [sym.imp.mfc110u.dll_Ordinal_1039]
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret