Function at 0x42b400
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x640771
mov eax, dword fs:[0]
push eax
sub esp, 0x1cc
mov eax, dword [0x6d906c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x1a4], ecx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x1a4]
call fcn.0042f6f0
mov ecx, dword [ebp + 0xc]
push ecx
mov ecx, dword [ebp - 0x1a4]
add ecx, 0x84
call fcn.0042f6f0
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x1a4]
add ecx, 0x108
call fcn.0042f6f0
lea ecx, [ebp - 0x118]
call fcn.0042f450
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x94]
call fcn.0042f450
mov byte [ebp - 4], 1
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x1a8], 0
jmp 0x42b4b0
mov eax, dword [ebp - 0x1a8]
add eax, 1
mov dword [ebp - 0x1a8], eax
cmp dword [ebp - 0x1a8], 2
jge 0x42bde8
cmp dword [ebp - 0x1a8], 1
jne 0x42b4cc
mov ecx, dword [ebp + 0xc]
mov dword [ebp + 8], ecx
cmp dword [ebp + 8], 0
jne 0x42b4d4
jmp 0x42b4a1
mov edx, dword [ebp + 8]
movzx eax, word [edx]
test eax, eax
je 0x42bde3
lea ecx, [ebp - 0x118]
call fcn.0042fc80
lea ecx, [ebp - 0x94]
call fcn.0042fc80
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
test edx, edx
jle 0x42b51c
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x20
jg 0x42b51c
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_CharNextW]
mov dword [ebp + 8], eax
jmp 0x42b4f8
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
test ecx, ecx
je 0x42b584
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x3d
je 0x42b584
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x20
jle 0x42b584
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_CharNextW]
mov dword [ebp - 0x1c4], eax
mov ecx, dword [ebp + 8]
cmp ecx, dword [ebp - 0x1c4]
jae 0x42b582
mov edx, dword [ebp + 8]
mov ax, word [edx]
mov word [ebp - 0x1aa], ax
movzx ecx, word [ebp - 0x1aa]
push ecx
lea ecx, [ebp - 0x118]
call fcn.0042f970
mov edx, dword [ebp + 8]
add edx, 2
mov dword [ebp + 8], edx
jmp 0x42b54c
jmp 0x42b51c
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
test ecx, ecx
jle 0x42b5a8
mov edx, dword [ebp + 8]
movzx eax, word [edx]
cmp eax, 0x20
jg 0x42b5a8
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_CharNextW]
mov dword [ebp + 8], eax
jmp 0x42b584
mov edx, dword [ebp + 8]
movzx eax, word [edx]
mov dword [ebp - 0x1c8], eax
mov ecx, dword [ebp + 8]
add ecx, 2
mov dword [ebp + 8], ecx
cmp dword [ebp - 0x1c8], 0x3d
je 0x42b5cb
jmp 0x42bde3
mov edx, dword [ebp + 8]
movzx eax, word [edx]
test eax, eax
jle 0x42b5ef
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
cmp edx, 0x20
jg 0x42b5ef
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_CharNextW]
mov dword [ebp + 8], eax
jmp 0x42b5cb
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
mov dword [ebp - 0x1cc], edx
mov eax, dword [ebp + 8]
add eax, 2
mov dword [ebp + 8], eax
cmp dword [ebp - 0x1cc], 0x27
je 0x42b612
jmp 0x42bde3
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
test edx, edx
je 0x42b66f
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
cmp ecx, 0x27
je 0x42b66f
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_CharNextW]
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebp + 8]
cmp eax, dword [ebp - 0x1d0]
jae 0x42b66d
mov ecx, dword [ebp + 8]
mov dx, word [ecx]
mov word [ebp - 0x1ac], dx
movzx eax, word [ebp - 0x1ac]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042f970
mov ecx, dword [ebp + 8]
add ecx, 2
mov dword [ebp + 8], ecx
jmp 0x42b637
jmp 0x42b612
mov edx, dword [ebp + 8]
movzx eax, word [edx]
mov dword [ebp - 0x1d4], eax
mov ecx, dword [ebp + 8]
add ecx, 2
mov dword [ebp + 8], ecx
cmp dword [ebp - 0x1d4], 0x27
je 0x42b692
jmp 0x42bde3
lea ecx, [ebp - 0x94]
call fcn.004304a0
movzx edx, al
test edx, edx
jne 0x42bdbe
push 0x64ac48
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx eax, al
test eax, eax
jne 0x42b6d6
push 0x64ac54
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx ecx, al
test ecx, ecx
je 0x42b6f3
lea edx, [ebp - 0x94]
push edx
mov ecx, dword [ebp - 0x1a4]
add ecx, 0x108
call fcn.0042f6c0
jmp 0x42bdbe
push str.restype
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx eax, al
test eax, eax
je 0x42b727
lea ecx, [ebp - 0x94]
push ecx
mov ecx, dword [ebp - 0x1a4]
add ecx, 0x18c
call fcn.0042f6c0
jmp 0x42bdbe
push str.dest
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx edx, al
test edx, edx
je 0x42b7e5
push 0xa
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x210], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x214], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x218], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x21c], eax
jmp 0x42bdbe
push str.source
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx edx, al
test edx, edx
je 0x42b8a3
push 0xa
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x220], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x224], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x228], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x22c], eax
jmp 0x42bdbe
push str.corner
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx edx, al
test edx, edx
je 0x42b961
push 0xa
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x230], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x234], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x238], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x23c], eax
jmp 0x42bdbe
push 0x64ac98
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx edx, al
test edx, edx
je 0x42b9e9
push 0
lea ecx, [ebp - 0x94]
call fcn.0042f7a0
movzx eax, ax
cmp eax, 0x23
jne 0x42b9bb
push 0x10
lea ecx, [ebp - 0x1a0]
push ecx
lea ecx, [ebp - 0x94]
call fcn.0042f800
add eax, 2
push eax
call fcn.0050e458
add esp, 0xc
mov edx, dword [ebp - 0x1a4]
mov dword [edx + 0x240], eax
jmp 0x42b9e4
push 0x10
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050e458
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x240], eax
jmp 0x42bdbe
push str.fade
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx edx, al
test edx, edx
je 0x42ba2e
push 0xa
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050e458
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x244], eax
jmp 0x42bdbe
push str.rotate
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx edx, al
test edx, edx
je 0x42ba80
push 0xa
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050e458
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x248], eax
mov edx, dword [ebp - 0x1a4]
mov byte [edx + 0x250], 1
jmp 0x42bdbe
push str.gdiplus
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx eax, al
test eax, eax
je 0x42bae1
push 0x64acd0
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050cd87
add esp, 8
test eax, eax
jne 0x42bac0
mov dword [ebp - 0x1b0], 1
jmp 0x42baca
mov dword [ebp - 0x1b0], 0
mov ecx, dword [ebp - 0x1a4]
mov dl, byte [ebp - 0x1b0]
mov byte [ecx + 0x250], dl
jmp 0x42bdbe
push str.hole
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx eax, al
test eax, eax
je 0x42bb42
push 0x64acd0
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050cd87
add esp, 8
test eax, eax
jne 0x42bb21
mov dword [ebp - 0x1b4], 1
jmp 0x42bb2b
mov dword [ebp - 0x1b4], 0
mov ecx, dword [ebp - 0x1a4]
mov dl, byte [ebp - 0x1b4]
mov byte [ecx + 0x24c], dl
jmp 0x42bdbe
push str.xtiled
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx eax, al
test eax, eax
je 0x42bba3
push 0x64acd0
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050cd87
add esp, 8
test eax, eax
jne 0x42bb82
mov dword [ebp - 0x1b8], 1
jmp 0x42bb8c
mov dword [ebp - 0x1b8], 0
mov ecx, dword [ebp - 0x1a4]
mov dl, byte [ebp - 0x1b8]
mov byte [ecx + 0x24d], dl
jmp 0x42bdbe
push str.ytiled
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx eax, al
test eax, eax
je 0x42bc04
push 0x64acd0
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050cd87
add esp, 8
test eax, eax
jne 0x42bbe3
mov dword [ebp - 0x1bc], 1
jmp 0x42bbed
mov dword [ebp - 0x1bc], 0
mov ecx, dword [ebp - 0x1a4]
mov dl, byte [ebp - 0x1bc]
mov byte [ecx + 0x24e], dl
jmp 0x42bdbe
push 0x64ad08
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx eax, al
test eax, eax
je 0x42bc65
push 0x64acd0
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050cd87
add esp, 8
test eax, eax
jne 0x42bc44
mov dword [ebp - 0x1c0], 1
jmp 0x42bc4e
mov dword [ebp - 0x1c0], 0
mov ecx, dword [ebp - 0x1a4]
mov dl, byte [ebp - 0x1c0]
mov byte [ecx + 0x24f], dl
jmp 0x42bdbe
push 0x64ad10
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx eax, al
test eax, eax
je 0x42bcd1
push 0xa
lea ecx, [ebp - 0x1a0]
push ecx
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050e42c
add esp, 0xc
mov edx, dword [ebp - 0x1a4]
mov dword [edx + 0x254], eax
push 0xa
lea eax, [ebp - 0x1a0]
push eax
mov ecx, dword [ebp - 0x1a0]
add ecx, 2
push ecx
call fcn.0050e42c
add esp, 0xc
mov edx, dword [ebp - 0x1a4]
mov dword [edx + 0x258], eax
jmp 0x42bdbe
push str.align
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx eax, al
test eax, eax
je 0x42bd05
lea ecx, [ebp - 0x94]
push ecx
mov ecx, dword [ebp - 0x1a4]
add ecx, 0x26c
call fcn.0042f6c0
jmp 0x42bdbe
push 0x64ad28
lea ecx, [ebp - 0x118]
call fcn.0042f720
movzx edx, al
test edx, edx
je 0x42bdbe
push 0xa
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042f800
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x25c], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x260], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x264], eax
push 0xa
lea edx, [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a0]
add eax, 2
push eax
call fcn.0050e42c
add esp, 0xc
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx + 0x268], eax
mov edx, dword [ebp + 8]
movzx eax, word [edx]
mov dword [ebp - 0x1d8], eax
mov ecx, dword [ebp + 8]
add ecx, 2
mov dword [ebp + 8], ecx
cmp dword [ebp - 0x1d8], 0x20
je 0x42bdde
jmp 0x42bde3
jmp 0x42b4d4
jmp 0x42b4a1
cmp dword [ebp + 0x10], 0
je 0x42be66
mov ecx, dword [ebp + 0x10]
call fcn.004252b0
mov ecx, eax
call fcn.00434c90
cmp eax, 0x64
je 0x42be66
lea ecx, [ebp - 0x19c]
call fcn.0042f450
mov byte [ebp - 4], 2
mov ecx, dword [ebp + 0x10]
call fcn.004252b0
mov ecx, eax
call fcn.00434c90
push eax
push str.__d.
lea edx, [ebp - 0x19c]
push edx
call fcn.0042ff70
add esp, 0xc
lea ecx, [ebp - 0x19c]
call fcn.0042f800
push eax
push 0x64ad44
mov ecx, dword [ebp - 0x1a4]
add ecx, 0x108
call fcn.00430890
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x19c]
call fcn.0042f5b0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x94]
call fcn.0042f5b0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x118]
call fcn.0042f5b0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00421065
mov esp, ebp
pop ebp
ret 0xc