Function at 0x4ad0e2eb
Capabilities:
Get geographical location

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x16c
mov eax, dword [0x4ad33b78]
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
test eax, eax
push edi
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0x15c], edi
jne 0x4ad12bfa
lea eax, [ebp - 0x158]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
lea eax, [ebp - 0x164]
push eax
lea eax, [ebp - 0x158]
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
lea eax, [ebp - 0x16c]
push eax
lea eax, [ebp - 0x164]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
lea eax, [ebp - 0x158]
push eax
lea eax, [ebp - 0x16c]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
cmp dword [ebp + 0xc], 1
je 0x4ad12c0c
cmp byte [0x4ad2fa64], 0
push esi
je 0x4ad12c9e
and dword [ebp - 0x148], 0
push 0x80
lea eax, [ebp - 0x144]
push eax
push 0x1003
call fcn.4ad056f5
push eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x4ad12c66
cmp word [ebp - 0x144], 0
push ebx
push 2
lea esi, [ebp - 0x144]
pop ebx
je 0x4ad0e3ee
mov di, word [esi]
cmp di, 0x27
je 0x4ad12c7f
cmp dword [ebp - 0x148], 0
jne 0x4ad0e46a
cmp di, 0x68
je 0x4ad0e437
cmp di, 0x48
je 0x4ad0e437
cmp di, 0x6d
je 0x4ad0e437
add esi, ebx
cmp word [esi], 0
jne 0x4ad0e3b4
mov edi, dword [ebp - 0x15c]
push 0x20
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x144]
push eax
lea eax, [ebp - 0x158]
push eax
push ebx
call fcn.4ad056f5
push eax
call dword [sym.imp.KERNEL32.dll_GetTimeFormatW]
test eax, eax
pop ebx
je 0x4ad12c95
test edi, edi
lea eax, [ebp - 0x44]
jne 0x4ad12cfa
push eax
call fcn.4ad05e44
pop esi
mov ecx, dword [ebp - 4]
pop edi
call fcn.4ad01305
leave
ret 0x10
xor eax, eax
add esi, ebx
inc eax
cmp word [esi], di
je 0x4ad0e439
mov ecx, eax
neg ecx
cmp eax, 1
lea esi, [esi + ecx*2]
jne 0x4ad0e46a
push esi
call dword [sym.imp.msvcrt.dll_wcslen]
lea eax, [eax + eax + 2]
push eax
lea eax, [esi + 2]
push esi
push eax
call dword [sym.imp.msvcrt.dll_memmove]
add esp, 0x10
mov word [esi], di
add esi, ebx
jmp 0x4ad0e3e0
lea ecx, [ebp - 0x164]
push ecx
push eax
call fcn.4ad19bf3
jmp 0x4ad0e334
movzx eax, word [ebp - 0x14a]
push 0xa
pop ecx
cdq
idiv ecx
test edi, edi
movzx ecx, word [ebp - 0x14e]
push eax
movzx eax, word [ebp - 0x14c]
push 0x4ad34b40
push eax
mov eax, 0x4ad34b60
push eax
push ecx
push eax
movzx eax, word [ebp - 0x150]
push eax
push 0x4ad3d864
jne 0x4ad12c54
call fcn.4ad05e0c
add esp, 0x20
jmp 0x4ad0e42a
push dword [ebp + 0x14]
push edi
call dword [sym.imp.msvcrt.dll__snwprintf]
add esp, 0x28
jmp 0x4ad0e42a
lea eax, [ebp - 0x144]
push 0x4ad12d1c
push eax
call dword [sym.imp.msvcrt.dll_wcscpy]
pop ecx
pop ecx
jmp 0x4ad0e3a0
xor eax, eax
cmp dword [ebp - 0x148], eax
sete al
mov dword [ebp - 0x148], eax
jmp 0x4ad0e46a
and word [ebp - 0x44], ax
jmp 0x4ad0e418
cmp dword [0x4ad2fa3c], 0
movzx eax, word [ebp - 0x150]
mov edx, 0x4ad34920
je 0x4ad12ccd
push 0xc
pop ecx
cmp eax, ecx
jb 0x4ad12cc5
jbe 0x4ad12cbe
sub eax, ecx
mov edx, 0x4ad348e0
jmp 0x4ad12cd2
test eax, eax
jne 0x4ad12cd2
mov eax, ecx
jmp 0x4ad12cd2
mov edx, 0x4ad05d98
movzx ecx, word [ebp - 0x14e]
push edx
push ecx
push 0x4ad34b60
push eax
push 0x4ad3d848
lea eax, [ebp - 0x44]
push 0x20
push eax
call dword [sym.imp.msvcrt.dll__snwprintf]
add esp, 0x1c
jmp 0x4ad0e418
mov esi, dword [ebp + 0x14]
push esi
push eax
push edi
call dword [sym.imp.msvcrt.dll_wcsncpy]
and word [edi + esi*2], 0
push edi
call dword [sym.imp.msvcrt.dll_wcslen]
add esp, 0x10
jmp 0x4ad0e429