Function at 0x401a82
Capabilities:
Get geographical location

Disassembly:
mov eax, 0x4cd82d
call fcn.004cd440
sub esp, 0x7c
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x30], edx
mov edi, ecx
mov dword [ebp - 0x2c], edi
xor ebx, ebx
mov dword [ebp - 0x18], ebx
push 2
lea ecx, [ebp - 0x48]
call fcn.0040bdd2
mov dword [ebp - 0x18], ebx
jmp 0x401ac1
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x48]
mov dword [eax + ecx*4], 0x2afe
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x401ab1
mov dword [ebp - 0x18], 0xfffffff7
mov dword [ebp - 0x18], ebx
xor esi, esi
inc esi
jmp 0x401ae8
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], bl
je 0x401ae5
push ebx
call dword [sym.imp.USER32.dll_CharNextW]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jle 0x401ad6
lea ecx, [ebp - 0x48]
call fcn.0040bea4
mov dword [ebp - 0x28], 0x5078
cmp dword [ebp - 0x28], 0x5223
jle 0x401b83
mov edx, ebx
mov dword [ebp - 0x18], ebx
mov eax, ebx
mov dword [ebp - 0x1c], ebx
mov edi, ebx
mov ecx, ebx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x24], 0x6f24
sar eax, cl
xor eax, edx
cdq
push edx
push eax
lea ecx, [ebp - 0x88]
call fcn.004019d8
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x401b39
mov eax, dword [eax]
push eax
call fcn.004b7f67
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x88]
call fcn.0040c380
mov ecx, dword [ebp - 0x20]
add ecx, edi
mov dword [ebp - 0x20], ecx
dec dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jne 0x401b1d
inc edi
cmp edi, 0x2bd3
jl 0x401b11
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, 0x1232
jl 0x401b0f
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 0x435a
jl 0x401b0a
mov edi, dword [ebp - 0x2c]
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x28], 0x4e51
jge 0x401b9a
push str.szz_jct_oypv_czmsl_wpzliam_pfuufoia_hxbutxxyx_ruoz_hvgdpadnb_pliizqobt_irsmduf_smmn_jkvm
call fcn.004b7f67
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x401bc6
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x2c], 0xfffffff7
mov dword [ebp - 0x2c], 0x5fe46c2e
mov dword [ebp - 0x20], 9
mov dword [ebp - 0x28], 0xf9a0
mov dword [ebp - 0x1c], 0x9da9
mov dword [ebp - 0x2c], 0xbbfad0d7
mov dword [ebp - 0x24], 0x800f
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jne 0x401c23
mov edx, dword [ebp - 0x18]
sub edx, dword [ebp - 0x18]
neg edx
sbb edx, edx
add edx, 7
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x20], ebx
mov ecx, ebx
je 0x401c25
mov ecx, esi
xor eax, eax
cmp ecx, 0x7a5e
setge al
cmp eax, dword [ebp - 0x18]
jle 0x401c38
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2c], 5
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp ecx, eax
setg dl
imul edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp edx, eax
setge cl
imul eax, ecx, 3
cmp eax, 0xffffffff
sbb ecx, ecx
neg ecx
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp ecx, eax
setne dl
imul edx, dword [ebp - 0x28]
cmp edx, dword [ebp - 0x1c]
je 0x401c84
cmp dword [ebp - 0x1c], ebx
mov ecx, esi
jne 0x401c86
mov ecx, ebx
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp ecx, eax
setl dl
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp eax, edx
setne cl
imul ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
neg eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x20], 0x3eb60693
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x1c], ebx
jmp 0x401cda
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x60], 0xa167c28c
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x401ccc
cmp dword [ebp - 0x18], esi
sbb ecx, ecx
neg ecx
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp ecx, eax
setne dl
sub edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp eax, edx
setg cl
xor eax, eax
cmp ecx, 0xcd45
setle al
cmp eax, dword [ebp - 0x18]
jle 0x401d2b
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x401d9f
push 0x1eb4
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
jmp 0x401d9f
mov dword [ebp - 0x28], 0xfffe
push 3
lea ecx, [ebp - 0x54]
call fcn.0040bdd2
movdqa xmm0, xmmword [0xa98e10]
movdqu xmmword [ebp - 0x70], xmm0
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ebx
push dword [ebp - 0x30]
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x70]
push eax
push ebx
lea ecx, [ebp - 0x3c]
call fcn.0040ee26
mov dword [ebp - 0x1c], ebx
jmp 0x401d77
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x54]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x401d6b
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x2c]
lea ecx, [ebp - 0x3c]
call fcn.0040bea4
lea ecx, [ebp - 0x54]
call fcn.0040bea4
mov dword [edi], ebx
cmp dword [edi], 2
jge 0x401dbb
mov edx, dword [ebp - 0x30]
mov ecx, dword [edi]
mov eax, dword [edx]
mov dword [eax + ecx*4], 0x2afe
inc dword [edi]
cmp dword [edi], 2
jl 0x401da9
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret