Function at 0x43a110
Capabilities:
Get geographical location

Disassembly:
sub esp, 0x7e8
push ebx
push ebp
push esi
push edi
mov esi, ecx
call fcn.0043f420
xor ebx, ebx
cmp esi, 0xffffffff
mov dword [0x1545e90], ebx
jne 0x43a14a
cmp dword [0x14c76cc], ebx
jne 0x43a14a
call fcn.0043a010
mov ebp, 1
mov esi, eax
mov dword [0x14c76cc], ebp
jmp 0x43a14f
mov ebp, 1
mov eax, esi
dec eax
je 0x43a272
dec eax
je 0x43a215
dec eax
je 0x43a1ad
mov eax, dword [str.MAPSSUBURB.BIN]
mov ecx, dword [0x4c382c]
mov edx, dword [0x4c3830]
mov dword [0x14d2d40], eax
mov eax, dword [0x4c3834]
mov dword [0x14d2d44], ecx
mov ecx, dword [str.SUB.VIS]
mov dword [0x14d2d48], edx
mov edx, dword [0x4c38a0]
mov dword [0x14d2d4c], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [0x14ca5dc], ebp
jmp 0x43a2d3
mov eax, dword [str.MAPSCHINATWN.BIN]
mov ecx, dword [0x4c3864]
mov edx, dword [0x4c3868]
mov dword [0x14d2d40], eax
mov eax, dword [0x4c386c]
mov dword [0x14d2d44], ecx
mov cx, word [0x4c3870]
mov dword [0x14d2d48], edx
mov edx, dword [str.CHINA.VIS]
mov dword [0x14d2d4c], eax
mov eax, dword [0x4c38c0]
mov word [0x14d2d50], cx
mov cx, word [0x4c38c4]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
mov word [esp + 0x18], cx
mov dword [0x14ca5dc], 2
jmp 0x43a2d3
mov edx, dword [str.MAPSATOMALL.BIN]
mov eax, dword [0x4c3850]
mov ecx, dword [0x4c3854]
mov dword [0x14d2d40], edx
mov edx, dword [0x4c3858]
mov dword [0x14d2d44], eax
mov al, byte [0x4c385c]
mov dword [0x14d2d48], ecx
mov ecx, dword [str.MALL.VIS]
mov dword [0x14d2d4c], edx
mov edx, dword [0x4c38b4]
mov byte [0x14d2d50], al
mov al, byte [0x4c38b8]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov byte [esp + 0x18], al
mov dword [0x14ca5dc], ebx
jmp 0x43a2d3
mov edx, dword [0x4c383c]
mov ecx, dword [str.MAPSBIGCITY.BIN]
mov eax, dword [0x4c3840]
mov dword [0x14d2d40], ecx
mov ecx, dword [0x4c3844]
mov dword [0x14d2d44], edx
mov dl, byte [0x4c3848]
mov dword [0x14d2d48], eax
mov eax, dword [str.CENTRAL.VIS]
mov dword [0x14d2d4c], ecx
mov ecx, dword [0x4c38a8]
mov byte [0x14d2d50], dl
mov edx, dword [0x4c38ac]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], edx
mov dword [0x14ca5dc], 3
push ebp
call fcn.0043d050
push 2
lea eax, [esp + 0x18]
push ebx
push eax
lea edi, [esp + 0x2fc]
call fcn.00472860
add esp, 0x10
test eax, eax
jne 0x43a309
push str.WARNING:_Failed_to_load_a_vis_system_n
call fcn.004777d0
push ebx
call fcn.004847d0
add esp, 8
jmp 0x43a33b
mov esi, dword [esp + 0x2ec]
push ebx
lea ecx, [esp + 0x54]
push ecx
push 0x20000
push 0x1278248
push esi
call dword [section..xqrf]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x1278248
call fcn.004847d0
add esp, 4
push 0x3f
lea edx, [esp + 0x14]
push 0x14d2d40
push edx
call fcn.0049ae30
lea eax, [esp + 0x1c]
push 0x4c3824
push eax
call fcn.0049ada0
add esp, 0x14
cmp eax, ebx
je 0x43a36e
mov byte [eax + 1], 0x50
mov byte [eax + 2], 0x53
mov byte [eax + 3], 0x32
xor eax, eax
mov cl, byte [esp + eax + 0x10]
mov byte [esp + eax + 0x2ac], cl
inc eax
cmp cl, bl
jne 0x43a370
mov eax, 0x14d2d40
call fcn.0041c970
cmp dword [0x14cc494], ebx
je 0x43a40f
mov eax, dword [0x14ca5dc]
sub eax, ebx
mov ecx, 6
je 0x43a3f6
dec eax
je 0x43a3db
sub eax, 2
je 0x43a3c2
mov esi, str.MAPSFREEPLAYCHINAFP.NAI
lea edi, [esp + 0x94]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x94]
movsw word es:[edi], word [esi]
push ecx
jmp 0x43a414
mov esi, str.MAPSFREEPLAYCITYFP.NAI
lea edi, [esp + 0x94]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x94]
movsb byte es:[edi], byte [esi]
push ecx
jmp 0x43a414
mov esi, str.MAPSFREEPLAYSUBURBFP.NAI
lea edi, [esp + 0x94]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea ecx, [esp + 0x94]
movsb byte es:[edi], byte [esi]
push ecx
jmp 0x43a414
mov esi, str.MAPSFREEPLAYMALLFP.NAI
lea edi, [esp + 0x94]
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x94]
movsb byte es:[edi], byte [esi]
push ecx
jmp 0x43a414
push 0x14d2d40
call fcn.004238e0
add esp, 4
push str.MCN_BULL
lea edx, [esp + 0x98]
push str.Loading__s
push edx
mov dword [0x14c7654], ebp
call fcn.0049abb1
push str.MCN_BULL
lea eax, [esp + 0xa4]
push str.MAPSANM_s.PSD
push eax
call fcn.0049abb1
lea ecx, [esp + 0xac]
push 0x14d2f38
push ecx
call fcn.00472730
push str.FRK_LBRA
lea edx, [esp + 0xb8]
push str.Loading__s
push edx
call fcn.0049abb1
push str.FRK_LBRA
lea eax, [esp + 0xc4]
push str.MAPSANM_s.PSD
push eax
call fcn.0049abb1
lea ecx, [esp + 0xcc]
push 0x14d3a50
push ecx
call fcn.00472730
add esp, 0x40
push str.8BALLSET
lea edx, [esp + 0x98]
push str.Loading__s
push edx
call fcn.0049abb1
push str.8BALLSET
lea eax, [esp + 0xa4]
push str.MAPSANM_s.PSD
push eax
call fcn.0049abb1
lea ecx, [esp + 0xac]
push 0x14d4568
push ecx
call fcn.00472730
mov eax, dword [0x4d7230]
add esp, 0x20
cmp eax, 5
ja case.default.0x43a4f6
jmp dword [eax*4 + 0x43a94c]
push 0x14d5080
mov esi, str.MCNSKN
call fcn.0043a0d0
add esp, 4
jmp case.default.0x43a4f6
push 0x14d5b98
mov esi, str.BULLSKN
call fcn.0043a0d0
add esp, 4
jmp case.default.0x43a4f6
push 0x14d66b0
mov esi, str.FREAKSKN
call fcn.0043a0d0
add esp, 4
jmp case.default.0x43a4f6
push 0x14d71c8
mov esi, str.LIBRASKN
call fcn.0043a0d0
add esp, 4
jmp case.default.0x43a4f6
push 0x14d7ce0
mov esi, str.8BALLSKN
call fcn.0043a0d0
add esp, 4
jmp case.default.0x43a4f6
push 0x14d5080
mov esi, str.MCNSKN
call fcn.0043a0d0
push 0x14d5b98
mov esi, str.BULLSKN
call fcn.0043a0d0
push 0x14d66b0
mov esi, str.FREAKSKN
call fcn.0043a0d0
push 0x14d71c8
mov esi, str.LIBRASKN
call fcn.0043a0d0
push 0x14d7ce0
mov esi, str.8BALLSKN
call fcn.0043a0d0
add esp, 0x14
push str.Loading_the_character_textures_file
push 0x4c38e4
call fcn.004777d0
mov ecx, 5
mov esi, str.MAPSANMCROWDTEX.PS2
lea edi, [esp + 0x18]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
push 0x14d2e84
lea esi, [esp + 0x1c]
call fcn.00472b40
mov edx, dword [str.MAPSKOLLECTS.PS2]
mov eax, dword [0x4c3710]
mov ecx, dword [0x4c3714]
mov dword [esp + 0x1c], edx
mov edx, dword [0x4c3718]
mov dword [esp + 0x20], eax
mov ax, word [0x4c371c]
push 0x14d2ef0
lea esi, [esp + 0x20]
mov dword [0x14c7654], ebx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
mov word [esp + 0x30], ax
call fcn.00472b40
mov ecx, dword [str.MAPSICONS.PS2]
mov edx, dword [0x4c3700]
mov eax, dword [0x4c3704]
mov dword [esp + 0x20], ecx
mov cx, word [0x4c3708]
mov dword [esp + 0x24], edx
mov dl, byte [0x4c370a]
push 0x14d2f14
lea esi, [esp + 0x24]
mov dword [esp + 0x2c], eax
mov word [esp + 0x30], cx
mov byte [esp + 0x32], dl
call fcn.00472b40
push str.fst1
push 0x14d2ef0
call fcn.00481770
push str.fst1
push 0x14d2ef0
mov dword [0x150ae78], eax
call fcn.00481770
push str.fst2
push 0x14d2ef0
mov dword [0x150ae7c], eax
call fcn.00481770
push str.fst3
push 0x14d2ef0
mov dword [0x150ae88], eax
call fcn.00481770
push str.fst4
push 0x14d2ef0
mov dword [0x150ae80], eax
call fcn.00481770
push str.fst5
push 0x14d2ef0
mov dword [0x150ae84], eax
call fcn.00481770
add esp, 0x44
push str.bull
push 0x14d2ef0
mov dword [0x150ae8c], eax
call fcn.00481770
mov dword [0x150ae94], eax
add esp, 8
mov eax, 0x14f7118
mov ebp, 0x3f800000
mov dword [eax - 4], ebp
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebp
mov dword [eax + 0x14], ebx
mov dword [eax + 0x1c], ebx
mov dword [eax + 0x20], ebx
mov dword [eax + 0x24], ebp
mov dword [eax + 8], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x28], ebx
mov dword [eax + 0x38], ebp
add eax, 0x158
cmp eax, 0x14f9c18
jl 0x43a707
mov edx, dword [0x14d2f08]
xor eax, eax
mov ecx, 0x10
lea edi, [esp + 0x54]
rep stosd dword es:[edi], eax
mov eax, dword [0x150ae7c]
imul eax, eax, 0x5c
add eax, edx
push eax
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x19c]
push edx
call fcn.004817d0
push 0x1e
push 0x28
lea eax, [esp + 0x1a8]
push 0xd2
push eax
call fcn.004815b0
mov ecx, dword [0x150ae80]
mov eax, dword [0x14d2f08]
imul ecx, ecx, 0x5c
add ecx, eax
push ecx
lea edx, [esp + 0x74]
push edx
lea eax, [esp + 0x1b8]
push eax
call fcn.004817d0
push 0x50
push 0xeb
lea ecx, [esp + 0x1c4]
push 0xeb
push ecx
call fcn.004815b0
mov edx, dword [0x150ae84]
mov edi, dword [0x14d2f08]
imul edx, edx, 0x5c
add edx, edi
push edx
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0x1d4]
push ecx
call fcn.004817d0
add esp, 0x44
push 0x5f
push 0xb9
lea edx, [esp + 0x19c]
push 0x23
push edx
call fcn.004815b0
mov eax, dword [0x150ae88]
mov edx, dword [0x14d2f08]
imul eax, eax, 0x5c
add eax, edx
push eax
lea ecx, [esp + 0x68]
push ecx
lea edx, [esp + 0x1ac]
push edx
call fcn.004817d0
push 0xdc
push 0xa0
lea eax, [esp + 0x1b8]
push 0x32
push eax
call fcn.004815b0
mov ecx, dword [0x150ae8c]
mov eax, dword [0x14d2f08]
imul ecx, ecx, 0x5c
add ecx, eax
push ecx
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0x1c8]
push eax
call fcn.004817d0
push 0xe6
push 0x3c
lea ecx, [esp + 0x1d4]
push 0xaa
push ecx
call fcn.004815b0
add esp, 0x48
push str.Loaded_the_collectibles
push 0x4c38e4
call fcn.004777d0
mov ecx, 5
mov esi, str.MAPSANMCOSTUMES.COS
lea edi, [esp + 0x18]
rep movsd dword es:[edi], dword [esi]
lea edx, [esp + 0x18]
push edx
mov dword [0x14c7654], 1
movsw word es:[edi], word [esi]
call fcn.00439ea0
push str.Finished_characters_n
call fcn.004777d0
push str.Loaded_the_animations
push 0x4c38e4
call fcn.004777d0
push 3
call fcn.0048b3a0
push 0x3f13b646
push 0x3f13b646
push 0xbf13b646
push 0x3f847ae1
push 0x3f847ae1
push 0x3f847ae1
push ebx
call fcn.0048b440
push ebp
push 0x3e99999a
push 0x3e99999a
push 0x3e99999a
call fcn.0048b400
add esp, 0x48
pop edi
pop esi
pop ebp
mov dword [0x150d1ec], ebx
mov dword [0x150d1f0], ebx
mov dword [0x150d2c4], ebx
mov dword [0x150d360], ebx
mov dword [0x14c7654], ebx
mov dword [0x150d32c], 0x444d0000
mov dword [0x150d328], 0x444d0000
mov eax, 1
pop ebx
add esp, 0x7e8
ret