Function at 0x4a21d701
Capabilities:
Get geographical location

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x16c
mov eax, dword [0x4a2340ac]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push edi
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0x15c], edi
test eax, eax
jne 0x4a22309f
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
jne 0x4a222add
movzx eax, word [ebp - 0x14a]
push 0xa
pop ecx
cdq
idiv ecx
movzx ecx, word [ebp - 0x14e]
push eax
movzx eax, word [ebp - 0x14c]
push 0x4a234930
push eax
mov eax, 0x4a234950
push eax
push ecx
push eax
movzx eax, word [ebp - 0x150]
push eax
push str._2d_s_02d_s_02d_s_02d
test edi, edi
je 0x4a225048
push dword [ebp + 0x14]
push edi
call fcn.4a21179d
add esp, 0x28
mov eax, edi
push 2
lea edx, [eax + 2]
pop ebx
mov cx, word [eax]
add eax, ebx
test cx, cx
jne 0x4a21d7d2
sub eax, edx
sar eax, 1
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop ebx
call fcn.4a2113a9
leave
ret 0x10
mov cx, word [eax]
add eax, ebx
test cx, cx
jne 0x4a222a62
sub eax, edx
sar eax, 1
lea eax, [eax + eax + 2]
push eax
lea eax, [esi + 2]
push esi
push eax
call dword [sym.imp.msvcrt.dll_memmove]
add esp, 0xc
mov word [esi], di
add esi, ebx
add esi, ebx
cmp word [esi], 0
je 0x4a222ad5
movzx edi, word [esi]
cmp di, 0x27
je 0x4a22506c
cmp dword [ebp - 0x148], 0
jne 0x4a222a86
cmp di, 0x68
je 0x4a222ab8
cmp di, 0x48
je 0x4a222ab8
cmp di, 0x6d
jne 0x4a222a88
xor eax, eax
add esi, ebx
inc eax
cmp word [esi], di
je 0x4a222aba
mov ecx, eax
neg ecx
lea esi, [esi + ecx*2]
cmp eax, 1
jne 0x4a222a86
mov eax, esi
lea edx, [eax + 2]
jmp 0x4a222a62
mov edi, dword [ebp - 0x15c]
jmp 0x4a222b2d
cmp byte [0x4a234081], 0
push 2
pop ebx
je 0x4a22508b
and dword [ebp - 0x148], 0
push esi
lea esi, [ebx + 0x7e]
push esi
lea eax, [ebp - 0x144]
push eax
push 0x1003
call fcn.4a21756d
push eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x4a225055
cmp word [ebp - 0x144], 0
lea esi, [ebp - 0x144]
jne 0x4a222a90
push 0x20
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x144]
push eax
lea eax, [ebp - 0x158]
push eax
push ebx
call fcn.4a21756d
push eax
call dword [sym.imp.KERNEL32.dll_GetTimeFormatW]
pop esi
test eax, eax
je 0x4a225082
lea eax, [ebp - 0x44]
push eax
test edi, edi
je 0x4a2250e6
push dword [ebp + 0x14]
push edi
call fcn.4a21185a
mov eax, edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, ebx
test cx, cx
jne 0x4a222b71
jmp 0x4a21d7dc
lea ecx, [ebp - 0x164]
push ecx
push eax
call fcn.4a2230b6
jmp 0x4a21d74d
call fcn.4a2158f3
add esp, 0x20
jmp 0x4a21d7e0
push 0x4a2250f0
push esi
lea eax, [ebp - 0x144]
push eax
call fcn.4a21185a
jmp 0x4a222b19
xor eax, eax
cmp dword [ebp - 0x148], eax
sete al
mov dword [ebp - 0x148], eax
jmp 0x4a222a86
mov word [ebp - 0x44], ax
jmp 0x4a222b57
cmp dword [0x4a234090], 0
movzx eax, word [ebp - 0x150]
mov edx, 0x4a234bc0
je 0x4a2250ba
push 0xc
pop ecx
cmp eax, ecx
jb 0x4a2250b2
jbe 0x4a2250ab
sub eax, ecx
mov edx, 0x4a234b80
jmp 0x4a2250bf
test eax, eax
jne 0x4a2250bf
mov eax, ecx
jmp 0x4a2250bf
mov edx, 0x4a2125b8
movzx ecx, word [ebp - 0x14e]
push edx
push ecx
push 0x4a234950
push eax
push str._02d_s_02d_s
lea eax, [ebp - 0x44]
push 0x20
push eax
call fcn.4a21179d
add esp, 0x1c
jmp 0x4a222b57
call fcn.4a21c5a0
jmp 0x4a21d7e0