Function at 0x5892c8
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x48
push 0
push 0
dec ecx
jne 0x5892d0
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00404fa4
mov ecx, 0x33
lea eax, [ebp - 0x11c]
mov edx, dword [0x4010ac]
call fcn.004058d0
mov ecx, 0x33
lea eax, [ebp - 0x1e8]
mov edx, dword [0x4010ac]
call fcn.004058d0
xor eax, eax
push ebp
push 0x58996f
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0xc]
call fcn.00404ae4
lea eax, [ebp - 0x10]
call fcn.00404ae4
mov byte [ebp - 5], 0
xor eax, eax
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x28]
call fcn.00404ae4
mov eax, dword [0x669924]
mov byte [eax], 0
mov eax, dword [ebp - 4]
call fcn.00404db4
cmp eax, 0x20
jge 0x58936c
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x589988
call fcn.0052fa8c
mov byte [ebp - 5], 0
jmp 0x5898de
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x10
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.00405014
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x10
mov edx, 0x11
mov eax, dword [ebp - 4]
call fcn.00405014
lea eax, [ebp - 0x1ec]
push eax
mov ecx, 2
mov edx, 0x25
mov eax, dword [ebp - 4]
call fcn.00405014
mov eax, dword [ebp - 0x1ec]
call fcn.0049b69c
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x1f0]
mov ecx, dword [ebp - 0xc]
mov edx, 0x5899b0
call fcn.00404e00
mov edx, dword [ebp - 0x1f0]
mov eax, dword [0x66a00c]
mov eax, dword [eax]
call fcn.0052fa8c
mov eax, dword [ebp - 0xc]
cmp byte [eax], 0x42
jne 0x5893f6
mov eax, dword [0x669924]
mov byte [eax], 1
jmp 0x5893fe
mov eax, dword [0x669924]
mov byte [eax], 0
lea eax, [ebp - 0x1f4]
mov ecx, dword [ebp - 0x10]
mov edx, 0x5899c8
call fcn.00404e00
mov edx, dword [ebp - 0x1f4]
mov eax, dword [0x66a00c]
mov eax, dword [eax]
call fcn.0052fa8c
mov eax, dword [ebp - 0xc]
mov edx, 0x5899e0
call fcn.00404f00
jne 0x589485
mov eax, dword [ebp - 0x10]
mov edx, 0x5899e0
call fcn.00404f00
jne 0x589485
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x5899fc
call fcn.0052fa8c
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x589a1c
call fcn.0052fa8c
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x589a3c
call fcn.0052fa8c
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x5899fc
call fcn.0052fa8c
lea eax, [ebp - 0x30]
push eax
mov ecx, 8
mov edx, 0x11
mov eax, dword [ebp - 4]
call fcn.00405014
lea edx, [ebp - 0x1fc]
mov eax, dword [ebp - 0x30]
call fcn.0051db04
mov ecx, dword [ebp - 0x1fc]
lea eax, [ebp - 0x1f8]
mov edx, 0x589a88
call fcn.00404e00
mov edx, dword [ebp - 0x1f8]
mov eax, dword [0x66a00c]
mov eax, dword [eax]
call fcn.0052fa8c
lea edx, [ebp - 0x204]
mov eax, dword [ebp - 0x30]
call fcn.005205a4
mov ecx, dword [ebp - 0x204]
lea eax, [ebp - 0x200]
mov edx, 0x589aa0
call fcn.00404e00
mov edx, dword [ebp - 0x200]
mov eax, dword [0x66a00c]
mov eax, dword [eax]
call fcn.0052fa8c
lea eax, [ebp - 0x28]
push eax
mov ecx, 0x10
mov edx, 0x21
mov eax, dword [ebp - 4]
call fcn.0043e8fc
lea eax, [ebp - 0x208]
push eax
mov ecx, 1
mov edx, 8
mov eax, dword [ebp - 0x28]
call fcn.0043e8fc
mov eax, dword [ebp - 0x208]
call fcn.0049b69c
lea edx, [ebp - 0x1c]
call fcn.0040a40c
lea eax, [ebp - 0x20c]
push eax
mov ecx, 1
mov edx, 7
mov eax, dword [ebp - 0x28]
call fcn.0043e8fc
mov eax, dword [ebp - 0x20c]
call fcn.0049b69c
lea edx, [ebp - 0x18]
call fcn.0040a40c
lea eax, [ebp - 0x210]
push eax
mov ecx, 1
mov edx, 8
mov eax, dword [ebp - 0x28]
call fcn.0043e8fc
mov eax, dword [ebp - 0x210]
call fcn.0049b69c
lea edx, [ebp - 0x24]
call fcn.0040a40c
lea eax, [ebp - 0x214]
push eax
mov ecx, 1
mov edx, 7
mov eax, dword [ebp - 0x28]
call fcn.0043e8fc
mov eax, dword [ebp - 0x214]
call fcn.0049b69c
lea edx, [ebp - 0x20]
call fcn.0040a40c
push 0x589ab8
push dword [ebp - 0x24]
push 0x589ad4
push dword [ebp - 0x20]
push 0x589aec
lea eax, [ebp - 0x218]
mov edx, 5
call fcn.00404e74
mov edx, dword [ebp - 0x218]
mov eax, dword [0x66a00c]
mov eax, dword [eax]
call fcn.0052fa8c
lea edx, [ebp - 0x220]
mov eax, dword [ebp - 0x14]
call fcn.0040a40c
mov ecx, dword [ebp - 0x220]
lea eax, [ebp - 0x21c]
mov edx, 0x589afc
call fcn.00404e00
mov edx, dword [ebp - 0x21c]
mov eax, dword [0x66a00c]
mov eax, dword [eax]
call fcn.0052fa8c
cmp dword [ebp - 0x14], 0
je 0x5898ab
lea eax, [ebp - 0x28]
call fcn.00404ae4
lea eax, [ebp - 0x224]
push eax
mov eax, dword [ebp - 4]
call fcn.00404db4
mov ecx, eax
sub ecx, 0x30
mov edx, 0x31
mov eax, dword [ebp - 4]
call fcn.0043e8fc
mov eax, dword [ebp - 0x224]
lea edx, [ebp - 0x28]
call fcn.00409e04
lea eax, [ebp - 0x38]
call fcn.00404ae4
lea eax, [ebp - 0x3c]
call fcn.00404ae4
mov eax, dword [0x66a00c]
mov eax, dword [eax]
xor edx, edx
call fcn.0052fa8c
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x589b14
call fcn.0052fa8c
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x589b2c
call fcn.0052fa8c
mov eax, dword [ebp - 0x14]
dec eax
test eax, eax
jl 0x589709
inc eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x2c], 0
lea eax, [ebp - 0x228]
push eax
mov edx, dword [ebp - 0x2c]
shl edx, 4
sub edx, 0x10
inc edx
mov ecx, 0x10
mov eax, dword [ebp - 0x28]
call fcn.0043e8fc
mov edx, dword [ebp - 0x228]
mov eax, dword [ebp - 0x2c]
lea eax, [ebp + eax*4 - 0x11c]
call fcn.00404b7c
inc dword [ebp - 0x2c]
dec dword [ebp - 0x48]
jne 0x5896ce
lea eax, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x28]
call fcn.00404db4
mov ecx, eax
mov eax, dword [ebp - 0x14]
shl eax, 4
sub ecx, eax
mov edx, dword [ebp - 0x14]
shl edx, 4
inc edx
mov eax, dword [ebp - 0x28]
call fcn.0043e8fc
mov byte [ebp - 0x3d], 1
mov eax, dword [ebp - 0x14]
dec eax
test eax, eax
jl 0x589840
inc eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x2c], 0
mov eax, dword [0x669b48]
mov eax, dword [eax]
call fcn.00498e74
lea edx, [ebp - 0x230]
mov eax, dword [ebp - 0x2c]
inc eax
call fcn.0040a40c
mov ecx, dword [ebp - 0x230]
lea eax, [ebp - 0x22c]
mov edx, 0x589b54
call fcn.00404e00
mov edx, dword [ebp - 0x22c]
mov eax, dword [0x66a00c]
mov eax, dword [eax]
call fcn.0052fa8c
lea eax, [ebp - 0x234]
push eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp + eax*4 - 0x11c]
mov ecx, 2
mov edx, 9
call fcn.0043e8fc
mov eax, dword [ebp - 0x234]
call fcn.0049b69c
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x238]
push eax
mov ecx, dword [ebp - 0x34]
shl ecx, 3
lea ecx, [ecx + ecx*4]
mov edx, 1
mov eax, dword [ebp - 0x38]
call fcn.0043e8fc
mov edx, dword [ebp - 0x238]
mov eax, dword [ebp - 0x2c]
lea eax, [ebp + eax*4 - 0x1e8]
call fcn.00404b7c
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp + eax*4 - 0x1e8]
call fcn.00589114
test al, al
je 0x589803
mov byte [ebp - 0x3d], 0
mov eax, dword [ebp - 0x38]
call fcn.00404db4
mov edx, eax
mov eax, dword [ebp - 0x34]
shl eax, 3
lea eax, [eax + eax*4]
sub edx, eax
lea ecx, [ebp - 0x23c]
mov eax, dword [ebp - 0x38]
call fcn.0043e86c
mov edx, dword [ebp - 0x23c]
lea eax, [ebp - 0x38]
call fcn.00404b7c
inc dword [ebp - 0x2c]
dec dword [ebp - 0x48]
jne 0x589749
cmp byte [ebp - 0x3d], 1
jne 0x589855
lea eax, [ebp - 0x44]
mov edx, 0x589b64
call fcn.00404b7c
jmp 0x589862
lea eax, [ebp - 0x44]
mov edx, 0x589b78
call fcn.00404b7c
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x589b2c
call fcn.0052fa8c
lea eax, [ebp - 0x240]
mov ecx, dword [ebp - 0x44]
mov edx, 0x589b88
call fcn.00404e00
mov edx, dword [ebp - 0x240]
mov eax, dword [0x66a00c]
mov eax, dword [eax]
call fcn.0052fa8c
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x589b2c
call fcn.0052fa8c
jmp 0x5898de
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x589b2c
call fcn.0052fa8c
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x589b9c
call fcn.0052fa8c
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x589b2c
call fcn.0052fa8c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x589979
lea eax, [ebp - 0x240]
mov edx, 0x16
call fcn.00404b08
lea eax, [ebp - 0x1e8]
mov ecx, 0x33
mov edx, dword [0x4010ac]
call fcn.004059bc
lea eax, [ebp - 0x11c]
mov ecx, 0x33
mov edx, dword [0x4010ac]
call fcn.004059bc
lea eax, [ebp - 0x4c]
call fcn.00404ae4
lea eax, [ebp - 0x44]
call fcn.00404ae4
lea eax, [ebp - 0x3c]
mov edx, 2
call fcn.00404b08
lea eax, [ebp - 0x30]
call fcn.00404ae4
lea eax, [ebp - 0x28]
mov edx, 5
call fcn.00404b08
lea eax, [ebp - 0x10]
mov edx, 2
call fcn.00404b08
lea eax, [ebp - 4]
call fcn.00404ae4
ret