Function at 0x74a46f
Capabilities:
Get geographical location

Disassembly:
push 0x150
mov eax, 0x7d2395
call fcn.00700ca1
mov ebx, ecx
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebx + 4], eax
cmp dword [ebx + 8], edi
jne 0x74a496
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebx + 8], eax
push 0xaa
lea eax, [ebp - 0xc4]
push edi
push eax
call fcn.00719250
add esp, 0xc
lea eax, [ebp - 0xc4]
push edi
push 0x55
push eax
movzx eax, word [ebx + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_LCIDToLocaleName]
push 4
lea eax, [ebp - 0x18]
xorps xmm0, xmm0
push eax
push 0x70
lea eax, [ebp - 0xc4]
movlpd qword [ebp - 0x18], xmm0
push eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoEx]
mov ax, word [ebp - 0x18]
mov word [ebx + 0x138], ax
movzx eax, ax
push eax
movzx eax, word [ebx + 0xc]
push eax
push str.GpcErrorDialog::onInitDialog
push str._s__mLocale_d__layout_c
call fcn.007552b0
movzx eax, word [ebx + 0x138]
push eax
push dword [ebx + 4]
call fcn.00749bb6
push dword [ebx + 4]
lea eax, [ebp - 0x15c]
push eax
call fcn.004f9bdc
add esp, 0x20
mov ecx, dword [eax]
mov dword [ebx + 0x10], ecx
mov eax, dword [eax + 4]
mov dword [ebx + 0x14], eax
lea eax, [ebx + 0x3c]
cmp dword [eax + 0x14], 8
jb 0x74a538
mov eax, dword [eax]
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x7c
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
mov esi, eax
test esi, esi
je 0x74a578
push esi
push edi
mov edi, 0x80
push edi
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
push esi
push 1
push edi
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
xor edi, edi
movzx eax, word [ebx + 0xc]
push eax
push 0x447
push dword [0x8ea700]
lea eax, [ebp - 0x13c]
push eax
call fcn.00749c71
add esp, 0x10
lea ecx, [ebx + 0xcc]
push eax
call fcn.004c3974
lea ecx, [ebp - 0x13c]
call fcn.004c0931
movzx eax, word [ebx + 0xc]
push eax
push 0x445
push dword [0x8ea700]
lea eax, [ebp - 0x13c]
push eax
call fcn.00749c71
add esp, 0x10
lea ecx, [ebx + 0x84]
push eax
call fcn.004c3974
lea ecx, [ebp - 0x13c]
call fcn.004c0931
movzx eax, word [ebx + 0xc]
push eax
push 0x446
push dword [0x8ea700]
lea eax, [ebp - 0x154]
push eax
call fcn.00749c71
add esp, 0x10
lea ecx, [ebx + 0x9c]
push eax
call fcn.004c3974
lea ecx, [ebp - 0x154]
call fcn.004c0931
movzx eax, word [ebx + 0xc]
push eax
push 0x448
push dword [0x8ea700]
lea eax, [ebp - 0x114]
push eax
call fcn.00749c71
movzx eax, word [ebx + 0xc]
push eax
push 0x449
push dword [0x8ea700]
lea eax, [ebp - 0xfc]
mov dword [ebp - 4], edi
push eax
call fcn.00749c71
add esp, 0x20
cmp dword [ebp - 0x100], 8
lea esi, [ebp - 0x114]
push 0x441
push dword [ebx + 4]
cmovae esi, dword [ebp - 0x114]
mov byte [ebp - 4], 1
call dword [sym.imp.USER32.dll_GetDlgItem]
push esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
cmp dword [ebp - 0xe8], 8
lea esi, [ebp - 0xfc]
push 1
push dword [ebx + 4]
cmovae esi, dword [ebp - 0xfc]
call dword [sym.imp.USER32.dll_GetDlgItem]
push esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
lea eax, [ebp - 0x124]
push eax
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_GetWindowRect]
movss xmm0, dword [ebx + 0x14]
mulss xmm0, dword [0x852f88]
mov eax, dword [ebp - 0x118]
push edi
cvttss2si ecx, xmm0
movss xmm0, dword [ebx + 0x10]
mulss xmm0, dword [0x852f8c]
sub eax, ecx
cdq
sub eax, edx
push ecx
cvttss2si esi, xmm0
sar eax, 1
push esi
push eax
mov eax, dword [ebp - 0x11c]
sub eax, esi
cdq
sub eax, edx
sar eax, 1
push eax
push 1
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SetWindowPos]
cmp word [ebx + 0x138], 0x31
mov esi, 0x444
push edi
lea eax, [esi + 6]
cmove esi, eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push edi
push 0xa
pop edi
push edi
push edi
push 0
push esi
push eax
call dword [sym.imp.USER32.dll_LoadImageW]
xor esi, esi
mov dword [ebx + 0x130], eax
push esi
push edi
push edi
push esi
push 0x443
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.USER32.dll_LoadImageW]
push esi
push 0x1f
push 0x17
push esi
push 0x442
push esi
mov dword [ebx + 0x134], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.USER32.dll_LoadImageW]
push eax
push esi
push 0x172
push 0x440
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
lea edi, [ebp - 0xd4]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0xd4]
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetClientRect]
xor eax, eax
lea edi, [ebp - 0xe4]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0xe4]
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0xd4]
mov ecx, ebx
sub eax, dword [ebp - 0xcc]
sub eax, dword [ebp - 0xe4]
add eax, dword [ebp - 0xdc]
cdq
sub eax, edx
sar eax, 1
mov dword [ebx + 0x18], eax
call fcn.0074a9be
lea ecx, [ebp - 0xfc]
call fcn.004c0931
lea ecx, [ebp - 0x114]
call fcn.004c0931
xor al, al
call fcn.00700c4b
ret 0x10