Function at 0x4e42e0
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x120
mov eax, dword [0x50c004]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov dword [ebp - 0x108], 0
mov eax, dword [ebp + 0xc]
push eax
call fcn.0040cf90
add esp, 4
test eax, eax
jne 0x4e4318
mov eax, 1
jmp 0x4e4a8f
mov dword [0x5a5720], 1
jmp 0x4e4333
mov ecx, dword [0x5a5720]
add ecx, 1
mov dword [0x5a5720], ecx
mov edx, dword [0x5a5720]
cmp edx, dword [0x59bfe8]
jg 0x4e4a8a
mov dword [0x5a4234], 1
jmp 0x4e435e
mov eax, dword [0x5a4234]
add eax, 1
mov dword [0x5a4234], eax
imul ecx, dword [0x5a5720], 0x418
mov edx, dword [0x59cea0]
mov eax, dword [0x5a4234]
cmp eax, dword [edx + ecx + 0x40c]
jg 0x4e4a85
mov ecx, dword [ebp + 8]
push ecx
imul edx, dword [0x5a5720], 0x418
imul eax, dword [0x5a4234], 0x41
mov ecx, dword [0x59cea0]
mov edx, dword [ecx + edx + 0x410]
add edx, eax
push edx
call fcn.00427390
add esp, 8
test eax, eax
jne 0x4e4a80
mov dword [ebp - 0x108], 0
imul eax, dword [0x5a5720], 0x418
imul ecx, dword [0x5a4234], 0x10c
mov edx, dword [0x59cea0]
mov eax, dword [edx + eax + 0x414]
cmp dword [eax + ecx + 0x104], 0
jle 0x4e45a0
mov dword [0x5a7918], 1
jmp 0x4e4409
mov ecx, dword [0x5a7918]
add ecx, 1
mov dword [0x5a7918], ecx
imul edx, dword [0x5a5720], 0x418
imul eax, dword [0x5a4234], 0x10c
mov ecx, dword [0x59cea0]
mov edx, dword [ecx + edx + 0x414]
mov ecx, dword [0x5a7918]
cmp ecx, dword [edx + eax + 0x104]
jg 0x4e45a0
mov edx, dword [ebp + 0xc]
push edx
imul eax, dword [0x5a5720], 0x418
imul ecx, dword [0x5a4234], 0x10c
mov edx, dword [0x59cea0]
mov eax, dword [edx + eax + 0x414]
imul edx, dword [0x5a7918], 0x202
mov eax, dword [eax + ecx + 0x108]
add eax, edx
push eax
call fcn.00427390
add esp, 8
test eax, eax
jne 0x4e459b
imul ecx, dword [0x5a5720], 0x418
imul edx, dword [0x5a4234], 0x10c
mov eax, dword [0x59cea0]
mov ecx, dword [eax + ecx + 0x414]
imul eax, dword [0x5a7918], 0x202
mov ecx, dword [ecx + edx + 0x108]
lea edx, [ecx + eax + 0x101]
push edx
call fcn.0040cf90
add esp, 4
cmp eax, 0x100
jae 0x4e4518
imul eax, dword [0x5a5720], 0x418
imul ecx, dword [0x5a4234], 0x10c
mov edx, dword [0x59cea0]
mov eax, dword [edx + eax + 0x414]
imul edx, dword [0x5a7918], 0x202
mov eax, dword [eax + ecx + 0x108]
lea ecx, [eax + edx + 0x101]
push ecx
call fcn.0040cf90
add esp, 4
mov dword [ebp - 0x10c], eax
jmp 0x4e4522
mov dword [ebp - 0x10c], 0x100
mov edx, dword [ebp - 0x10c]
push edx
imul eax, dword [0x5a5720], 0x418
imul ecx, dword [0x5a4234], 0x10c
mov edx, dword [0x59cea0]
mov eax, dword [edx + eax + 0x414]
imul edx, dword [0x5a7918], 0x202
mov eax, dword [eax + ecx + 0x108]
lea ecx, [eax + edx + 0x101]
push ecx
imul edx, dword [0x5a5720], 0x418
imul eax, dword [0x5a4234], 0x10c
mov ecx, dword [0x59cea0]
mov edx, dword [ecx + edx + 0x414]
add edx, eax
push edx
call fcn.00427420
add esp, 0xc
mov dword [ebp - 0x108], 1
jmp 0x4e45a0
jmp 0x4e43fa
cmp dword [ebp - 0x108], 0
jne 0x4e4746
push 0x5957b4
mov eax, dword [ebp + 8]
push eax
call fcn.00427390
add esp, 8
test eax, eax
jne 0x4e4746
push 0x5957b0
push 0x59b458
call fcn.00427390
add esp, 8
test eax, eax
jne 0x4e4746
imul ecx, dword [0x5a5720], 0x418
mov edx, dword [0x59cea0]
cmp dword [edx + ecx + 4], 0
je 0x4e4746
mov eax, dword [ebp + 0xc]
push eax
call fcn.0040cf90
add esp, 4
imul ecx, dword [0x5a5720], 0x418
mov edx, dword [0x59cea0]
cmp eax, dword [edx + ecx + 4]
jbe 0x4e4746
imul esi, dword [0x5a5720], 0x418
push 0x59fa48
call fcn.0040cf90
add esp, 4
mov ecx, dword [0x59cea0]
cmp dword [ecx + esi + 4], eax
jl 0x4e46c8
cmp dword [ebp - 0x108], 0
jne 0x4e46c6
push 0x59fa48
call fcn.0040cf90
add esp, 4
cmp eax, 0x100
jae 0x4e467a
push 0x59fa48
call fcn.0040cf90
add esp, 4
mov dword [ebp - 0x110], eax
jmp 0x4e4684
mov dword [ebp - 0x110], 0x100
mov edx, dword [ebp - 0x110]
push edx
push 0x59fa48
imul eax, dword [0x5a5720], 0x418
imul ecx, dword [0x5a4234], 0x10c
mov edx, dword [0x59cea0]
mov eax, dword [edx + eax + 0x414]
add eax, ecx
push eax
call fcn.00427420
add esp, 0xc
mov dword [ebp - 0x108], 1
jmp 0x4e4746
cmp dword [ebp - 0x108], 0
jne 0x4e4746
push 0x59dbe8
call fcn.0040cf90
add esp, 4
cmp eax, 0x100
jae 0x4e46fa
push 0x59dbe8
call fcn.0040cf90
add esp, 4
mov dword [ebp - 0x114], eax
jmp 0x4e4704
mov dword [ebp - 0x114], 0x100
mov ecx, dword [ebp - 0x114]
push ecx
push 0x59dbe8
imul edx, dword [0x5a5720], 0x418
imul eax, dword [0x5a4234], 0x10c
mov ecx, dword [0x59cea0]
mov edx, dword [ecx + edx + 0x414]
add edx, eax
push edx
call fcn.00427420
add esp, 0xc
mov dword [ebp - 0x108], 1
cmp dword [ebp - 0x108], 0
jne 0x4e48ec
push 0x59579c
mov eax, dword [ebp + 8]
push eax
call fcn.00427390
add esp, 8
test eax, eax
jne 0x4e48ec
push 0x595798
push 0x59b458
call fcn.00427390
add esp, 8
test eax, eax
jne 0x4e48ec
imul ecx, dword [0x5a5720], 0x418
mov edx, dword [0x59cea0]
cmp dword [edx + ecx + 4], 0
je 0x4e48ec
mov eax, dword [ebp + 0xc]
push eax
call fcn.0040cf90
add esp, 4
imul ecx, dword [0x5a5720], 0x418
mov edx, dword [0x59cea0]
cmp eax, dword [edx + ecx + 4]
jbe 0x4e48ec
imul esi, dword [0x5a5720], 0x418
push 0x59f180
call fcn.0040cf90
add esp, 4
mov ecx, dword [0x59cea0]
cmp dword [ecx + esi + 4], eax
jl 0x4e486e
cmp dword [ebp - 0x108], 0
jne 0x4e486c
push 0x59f180
call fcn.0040cf90
add esp, 4
cmp eax, 0x100
jae 0x4e4820
push 0x59f180
call fcn.0040cf90
add esp, 4
mov dword [ebp - 0x118], eax
jmp 0x4e482a
mov dword [ebp - 0x118], 0x100
mov edx, dword [ebp - 0x118]
push edx
push 0x59f180
imul eax, dword [0x5a5720], 0x418
imul ecx, dword [0x5a4234], 0x10c
mov edx, dword [0x59cea0]
mov eax, dword [edx + eax + 0x414]
add eax, ecx
push eax
call fcn.00427420
add esp, 0xc
mov dword [ebp - 0x108], 1
jmp 0x4e48ec
cmp dword [ebp - 0x108], 0
jne 0x4e48ec
push 0x59f0b0
call fcn.0040cf90
add esp, 4
cmp eax, 0x100
jae 0x4e48a0
push 0x59f0b0
call fcn.0040cf90
add esp, 4
mov dword [ebp - 0x11c], eax
jmp 0x4e48aa
mov dword [ebp - 0x11c], 0x100
mov ecx, dword [ebp - 0x11c]
push ecx
push 0x59f0b0
imul edx, dword [0x5a5720], 0x418
imul eax, dword [0x5a4234], 0x10c
mov ecx, dword [0x59cea0]
mov edx, dword [ecx + edx + 0x414]
add edx, eax
push edx
call fcn.00427420
add esp, 0xc
mov dword [ebp - 0x108], 1
cmp dword [ebp - 0x108], 0
jne 0x4e4966
mov eax, dword [ebp + 0xc]
push eax
call fcn.0040cf90
add esp, 4
cmp eax, 0x100
jae 0x4e491c
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0040cf90
add esp, 4
mov dword [ebp - 0x120], eax
jmp 0x4e4926
mov dword [ebp - 0x120], 0x100
mov edx, dword [ebp - 0x120]
push edx
mov eax, dword [ebp + 0xc]
push eax
imul ecx, dword [0x5a5720], 0x418
imul edx, dword [0x5a4234], 0x10c
mov eax, dword [0x59cea0]
mov ecx, dword [eax + ecx + 0x414]
add ecx, edx
push ecx
call fcn.00427420
add esp, 0xc
mov dword [ebp - 0x108], 1
cmp dword [ebp - 0x108], 1
jne 0x4e4a80
imul edx, dword [0x5a5720], 0x418
mov eax, dword [0x59cea0]
cmp dword [eax + edx + 4], 0
jle 0x4e4a80
imul ecx, dword [0x5a5720], 0x418
mov edx, dword [0x59cea0]
cmp dword [edx + ecx + 0x40c], 1
jne 0x4e4a80
imul esi, dword [0x5a5720], 0x418
imul eax, dword [0x5a5720], 0x418
imul ecx, dword [0x5a4234], 0x10c
mov edx, dword [0x59cea0]
mov eax, dword [edx + eax + 0x414]
add eax, ecx
push eax
call fcn.0040cf90
add esp, 4
mov ecx, dword [0x59cea0]
cmp dword [ecx + esi + 4], eax
jge 0x4e4a80
mov edx, 1
imul eax, edx, 0
movsx ecx, byte [eax + 0x5400a8]
cmp ecx, 0x59
jne 0x4e4a7b
imul edx, dword [0x5a5720], 0x418
imul eax, dword [0x5a4234], 0x10c
mov ecx, dword [0x59cea0]
mov edx, dword [ecx + edx + 0x414]
add edx, eax
push edx
mov eax, dword [ebp + 8]
push eax
imul ecx, dword [0x5a5720], 0x418
mov edx, dword [0x59cea0]
mov eax, dword [edx + ecx + 4]
push eax
mov ecx, dword [0x5a5720]
push ecx
push str.Truncation_Detected_nObject_d__Length_d_nKey_s_nValue_s
lea edx, [ebp - 0x104]
push edx
call fcn.004010f0
add esp, 0x18
push 0x50010
push 0x5a80a0
lea eax, [ebp - 0x104]
push eax
mov ecx, dword [0x5a4ca8]
push ecx
call dword [sym.imp.USER32.dll_MessageBoxA]
call fcn.004f0440
jmp 0x4e4351
jmp 0x4e4324
mov eax, 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004014c7
mov esp, ebp
pop ebp
ret