Function at 0x4ddfa0
Capabilities:
Get geographical location

Disassembly:
fldz
xor eax, eax
push ebx
push esi
push edi
push ebp
movzx ebp, ax
add eax, 7
or word [ebp*2 + 0x9787b8], 0xffff
or word [ebp*2 + 0x9787ba], 0xffff
or word [ebp*2 + 0x9787bc], 0xffff
or word [ebp*2 + 0x9787be], 0xffff
or word [ebp*2 + 0x9787c0], 0xffff
or word [ebp*2 + 0x9787c2], 0xffff
or word [ebp*2 + 0x9787c4], 0xffff
cmp ax, 0xe
jb 0x4ddfa8
xor ebx, ebx
mov word [0xa10a46], 0
xor eax, eax
inc ebx
mov dword [eax + 0x94b990], 0
mov dword [eax + 0x94b994], 0
mov dword [eax + 0x94b998], 0
mov dword [eax + 0x94b99c], 0
mov dword [eax + 0x94b9a0], 0
mov dword [eax + 0x94b9a4], 0
mov dword [eax + 0x94b9a8], 0
mov dword [eax + 0x94b9ac], 0
mov dword [eax + 0x94b9b0], 0
mov word [eax + 0x94b9b8], 0
mov word [eax + 0x94b9ba], 0
mov dword [eax + 0x94b9bc], 0
mov dword [eax + 0x94b9c0], 0
mov dword [eax + 0x94b9c4], 0
add eax, 0x38
cmp bx, 0x14
jb 0x4de000
xor ebp, ebp
xor eax, eax
lea eax, [eax]
inc ebp
mov dword [eax + 0x862508], 0
mov dword [eax + 0x86250c], 0
mov dword [eax + 0x862510], 0
mov dword [eax + 0x862514], 0
mov dword [eax + 0x862518], 0
mov dword [eax + 0x86251c], 0
mov dword [eax + 0x862520], 0
mov dword [eax + 0x862524], 0
mov dword [eax + 0x862528], 2
mov word [eax + 0x862530], 0
mov word [eax + 0x862532], 0
mov dword [eax + 0x862534], 0
mov dword [eax + 0x862538], 0
mov dword [eax + 0x86253c], 0
add eax, 0x38
cmp bp, 0xa9
jb 0x4de0a0
xor eax, eax
xor edx, edx
xor ecx, ecx
nop
mov ebx, ecx
mov word [eax + 0x7fa370], 0xa
inc ebx
mov word [eax + 0x7fa372], 0x6f
mov ebp, ecx
mov si, word [ebx*2 + 0x7fa370]
mov edi, ecx
add esi, 0x6f
inc ebp
inc edi
mov word [edi*2 + 0x7fa372], si
mov bx, word [ebp*2 + 0x7fa372]
mov edi, ecx
mov esi, ecx
inc edi
add ebx, 0x6f
inc esi
mov word [esi*2 + 0x7fa374], bx
mov bp, word [edi*2 + 0x7fa374]
mov esi, ecx
mov ebx, ecx
inc esi
add ebp, 0x6f
inc ebx
mov word [ebx*2 + 0x7fa376], bp
mov di, word [esi*2 + 0x7fa376]
mov ebx, ecx
mov ebp, ecx
inc ebx
add edi, 0x6f
inc ebp
mov word [ebp*2 + 0x7fa378], di
mov si, word [ebx*2 + 0x7fa378]
mov ebp, ecx
mov edi, ecx
inc ebp
add esi, 0x6f
inc edi
mov word [edi*2 + 0x7fa37a], si
mov bx, word [ebp*2 + 0x7fa37a]
mov edi, ecx
mov esi, ecx
inc edi
add ebx, 0x6f
inc esi
mov word [esi*2 + 0x7fa37c], bx
mov bp, word [edi*2 + 0x7fa37c]
mov ebx, ecx
add ebp, 0x6f
inc ebx
xor esi, esi
mov edi, ecx
mov word [ebx*2 + 0x7fa37e], bp
mov ebp, eax
mov word [eax + 0x7fa382], 0x3e8
mov word [eax + 0x7fa384], 0x1f4
mov word [eax + 0x7fa386], 0x3e8
mov word [eax + 0x7fa39a], 0x32
mov eax, eax
lea eax, [eax]
mov bx, word [ebp + 0x7fa39a]
add esi, 3
mov word [edi*2 + 0x7fa388], bx
mov bx, word [ebp + 0x7fa39a]
mov word [edi*2 + 0x7fa38a], bx
mov bx, word [ebp + 0x7fa39a]
mov word [edi*2 + 0x7fa38c], bx
add edi, 3
cmp esi, 9
jl 0x4de230
xor esi, esi
mov word [eax + 0x7fa39c], 0xc
mov edi, eax
mov word [eax + 0x7fa3b0], 0x32
mov ebp, ecx
mov bx, word [edi + 0x7fa3b0]
add esi, 3
mov word [ebp*2 + 0x7fa39e], bx
mov bx, word [edi + 0x7fa3b0]
mov word [ebp*2 + 0x7fa3a0], bx
mov bx, word [edi + 0x7fa3b0]
mov word [ebp*2 + 0x7fa3a2], bx
add ebp, 3
cmp esi, 9
jl 0x4de280
inc edx
mov word [eax + 0x7fa3b2], 0
add ecx, 0x22
add eax, 0x44
cmp dx, 0x152
jb 0x4de140
mov edi, 0x862508
mov esi, str.CITYINF
mov word [0xa10968], 1
mov word [0xa10a58], 1
mov word [0xa1096a], 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld dword [0x6914f8]
mov edi, 0x94b990
mov esi, 0x6914fc
fchs
mov dword [0x862510], 0xc5160000
mov dword [0x862514], 0xc4fa0000
fst st(1)
fstp dword [0x862518]
mov dword [0x86251c], 0x44c80000
mov dword [0x862520], 0x44fa0000
mov dword [0x862524], 0x43fa0000
mov dword [0x86252c], 0
mov dword [0x862528], 2
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [0x94b998], 0xc5160000
mov dword [0x94b99c], 0xc4fa0000
fst dword [0x94b9a0]
mov dword [0x97f204], 0
mov dword [0x94b9a4], 0x44c80000
mov dword [0x94b9a8], 0x44fa0000
mov dword [0x94b9ac], 0x43fa0000
mov dword [0x94b9b4], 0
mov dword [0x94b9b0], 0
xor edi, edi
xor eax, eax
inc edi
mov dword [eax + 0x78bd20], 0
mov dword [eax + 0x78bd24], 0
mov dword [eax + 0x78bd28], 0
mov dword [eax + 0x78bd2c], 0
mov dword [eax + 0x78bd30], 0
mov dword [eax + 0x78bd34], 0
mov dword [eax + 0x78bd38], 0
mov dword [eax + 0x78bd3c], 0
mov dword [eax + 0x78bd40], 3
mov word [eax + 0x78bd48], 0
mov word [eax + 0x78bd4a], 0
mov dword [eax + 0x78bd4c], 0
mov dword [eax + 0x78bd50], 0
mov dword [eax + 0x78bd54], 0
add eax, 0x38
cmp di, 0x27
jb 0x4de3b8
mov edi, 0x78bd20
mov esi, str.THEMAP
mov word [0xa10a32], 1
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [0x78bd28], 0xc5160000
mov dword [0x78bd2c], 0xc4fa0000
fst dword [0x78bd30]
fstp st(0)
mov dword [0x78bd34], 0x44c80000
mov dword [0x78bd38], 0x44fa0000
mov dword [0x78bd3c], 0x43fa0000
mov dword [0x78bd44], 0
pop ebp
pop edi
pop esi
pop ebx
ret