Function at 0x1403479e0
Capabilities:
Get geographical location

Disassembly:
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x198
mov qword [rsp + 0xe0], 0xfffffffffffffffe
mov rax, qword [0x1404e41f8]
xor rax, rsp
mov qword [rsp + reloc.mfc90u.dll_CDynLinkLibrary::CDynLinkLibrary], rax
mov dword [rsp + 0xc0], 0
lea rcx, [rsp + 0x38]
call qword [0x1403f4428]
nop
cmp dword [rsp + 0x1b8], 0
jne 0x140347ece
mov dword [rsp + 0x50], 0xa
mov eax, dword [rsp + 0x1b0]
and eax, 8
test eax, eax
je 0x140347a61
mov dword [rsp + 0xe8], 1
jmp 0x140347a6c
mov dword [rsp + 0xe8], 0
mov eax, dword [rsp + 0xe8]
mov dword [rsp + 0x80], eax
cmp dword [rsp + 0x80], 0
jne 0x140347ad9
mov r9d, 0xa
lea r8, [rsp + 0x68]
mov edx, 0x23
mov ecx, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
movzx eax, word [rsp + 0x68]
mov dword [rsp + 0xec], eax
cmp dword [rsp + 0xec], 0x30
je 0x140347ac1
cmp dword [rsp + 0xec], 0x31
je 0x140347ace
jmp 0x140347ad9
mov dword [rsp + 0x80], 0
jmp 0x140347ad9
mov dword [rsp + 0x80], 1
cmp dword [rsp + 0x80], 0
je 0x140347af4
lea rax, [0x14046a138]
mov qword [rsp + 0xf0], rax
jmp 0x140347b03
lea rax, [0x14046a134]
mov qword [rsp + 0xf0], rax
mov rdx, qword [rsp + 0xf0]
lea rcx, [rsp + 0x38]
call qword [sym.imp.mfc90u.dll_CTreeCtrl::CTreeCtrl]
mov r9d, 0xa
lea r8, [rsp + 0x68]
mov edx, 0x25
mov ecx, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
movzx eax, word [rsp + 0x68]
mov dword [rsp + 0xf8], eax
cmp dword [rsp + 0xf8], 0x31
je 0x140347b4b
jmp 0x140347b66
xor edx, edx
lea rcx, [rsp + 0x38]
call qword [sym.imp.mfc90u.dll_CDumpContext::operator__]
movzx edx, ax
lea rcx, [rsp + 0x38]
call qword [0x1403f3868]
lea rcx, [rsp + 0x58]
call qword [0x1403f4428]
nop
mov r9d, 0xa
lea r8, [rsp + 0x68]
mov edx, 0x1e
mov ecx, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_CTreeCtrl::CTreeCtrl]
lea r8, [rsp + 0x58]
lea rdx, [0x14046a130]
lea rcx, [rsp + 0x88]
call fcn.1400188b0
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x108], rax
lea r8, [0x14046a130]
mov rdx, qword [rsp + 0x108]
lea rcx, [rsp + 0x90]
call fcn.140002470
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x118], rax
mov rdx, qword [rsp + 0x118]
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_CToolBarCtrl::CToolBarCtrl]
nop
lea rcx, [rsp + 0x90]
call qword [sym.imp.mfc90u.dll_CView::CView]
nop
lea rcx, [rsp + 0x88]
call qword [sym.imp.mfc90u.dll_CView::CView]
mov eax, dword [rsp + 0x1b0]
and eax, 1
test eax, eax
jne 0x140347cf9
lea r8, [0x140442ca0]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x98]
call fcn.140002470
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x128], rax
mov rdx, qword [rsp + 0x128]
lea rcx, [rsp + 0x38]
call qword [sym.imp.mfc90u.dll_]
nop
lea rcx, [rsp + 0x98]
call qword [sym.imp.mfc90u.dll_CView::CView]
mov eax, dword [rsp + 0x1b0]
and eax, 2
test eax, eax
jne 0x140347cf9
lea r8, [0x14046a128]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0xa0]
call fcn.140002470
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x138], rax
mov rdx, qword [rsp + 0x138]
lea rcx, [rsp + 0x38]
call qword [sym.imp.mfc90u.dll_]
nop
lea rcx, [rsp + 0xa0]
call qword [sym.imp.mfc90u.dll_CView::CView]
cmp dword [rsp + 0x80], 0
je 0x140347d15
mov eax, dword [rsp + 0x1b0]
and eax, 4
test eax, eax
je 0x140347ec3
xor eax, eax
mov word [rsp + 0x68], ax
mov rcx, qword [rsp + reloc.mfc90u.dll_CGopherLocator::CGopherLocator]
call fcn.1402440d0
cmp eax, 0xc
jge 0x140347d4b
mov r9d, 0xa
lea r8, [rsp + 0x68]
mov edx, 0x28
mov ecx, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
jmp 0x140347d66
mov r9d, 0xa
lea r8, [rsp + 0x68]
mov edx, 0x29
mov ecx, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_CTreeCtrl::CTreeCtrl]
lea r8, [rsp + 0x58]
lea rdx, [0x14046a130]
lea rcx, [rsp + 0xa8]
call fcn.1400188b0
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x148], rax
lea r8, [0x14046a130]
mov rdx, qword [rsp + 0x148]
lea rcx, [rsp + 0xb0]
call fcn.140002470
mov qword [rsp + reloc.mfc90u.dll_CChevronOwnerDrawMenu::CChevronOwnerDrawMenu], rax
mov rax, qword [rsp + reloc.mfc90u.dll_CChevronOwnerDrawMenu::CChevronOwnerDrawMenu]
mov qword [rsp + 0x158], rax
mov rdx, qword [rsp + 0x158]
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_CToolBarCtrl::CToolBarCtrl]
nop
lea rcx, [rsp + 0xb0]
call qword [sym.imp.mfc90u.dll_CView::CView]
nop
lea rcx, [rsp + 0xa8]
call qword [sym.imp.mfc90u.dll_CView::CView]
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_CStatusBar::GetThisMessageMap]
movzx eax, al
test eax, eax
jne 0x140347ec3
mov r9d, 0xa
lea r8, [rsp + 0x68]
mov edx, CRichEditDoc::GetView
mov ecx, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
movzx eax, word [rsp + 0x68]
mov dword [rsp + 0x160], eax
cmp dword [rsp + 0x160], 0x30
je 0x140347e5f
cmp dword [rsp + 0x160], 0x31
je 0x140347e71
jmp 0x140347ec3
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call qword [sym.imp.mfc90u.dll_]
jmp 0x140347ec3
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0xb8]
call fcn.140014560
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x170], rax
mov rdx, qword [rsp + 0x170]
lea rcx, [rsp + 0x38]
call qword [sym.imp.mfc90u.dll_CToolBarCtrl::CToolBarCtrl]
nop
lea rcx, [rsp + 0xb8]
call qword [sym.imp.mfc90u.dll_CView::CView]
nop
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_CView::CView]
lea rcx, [rsp + 0x30]
call qword [0x1403f4428]
nop
mov rax, qword [rsp + reloc.mfc90u.dll_CGopherLocator::CGopherLocator]
mov eax, dword [rax + 8]
mov dword [rsp + 0xdc], eax
cmp dword [rsp + 0xdc], 0
jne 0x140347f1e
lea rdx, [rsp + 0x40]
mov rax, qword [rsp + reloc.mfc90u.dll_CGopherLocator::CGopherLocator]
movsd xmm0, qword [rax]
call qword [sym.imp.OLEAUT32.dll_UnRegisterTypeLib]
test eax, eax
je 0x140347f1e
mov dword [rsp + reloc.mfc90u.dll_CDialog::CDialog], 1
jmp 0x140347f29
mov dword [rsp + reloc.mfc90u.dll_CDialog::CDialog], 0
cmp dword [rsp + 0x1b8], 0
je 0x140347f41
mov qword [rsp + 0x180], 0
jmp 0x140347f54
lea rcx, [rsp + 0x38]
call qword [sym.imp.mfc90u.dll_CDumpContext::operator___1]
mov qword [rsp + 0x180], rax
mov edx, SerializeElements<class ATL::CStringT<wchar_t,class StrTraitMFC_DLL<wchar_t,class ATL::ChTraitsCRT<wchar_t> > > >
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc90u.dll_CStdioFile::Flush]
mov dword [rsp + 0x28], delete[]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x180]
lea r8, [rsp + 0x40]
mov edx, dword [rsp + 0x1b0]
mov ecx, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call qword [sym.imp.KERNEL32.dll_GetTimeFormatW]
mov edx, 0xffffffff
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc90u.dll_CDataPathProperty::Open]
lea rdx, [rsp + 0x30]
mov rcx, qword [rsp + 0x1a0]
call qword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_class]
mov eax, dword [rsp + 0xc0]
or eax, 1
mov dword [rsp + 0xc0], eax
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc90u.dll_CView::CView]
nop
lea rcx, [rsp + 0x38]
call qword [sym.imp.mfc90u.dll_CView::CView]
mov rax, qword [rsp + 0x1a0]
mov rcx, qword [rsp + reloc.mfc90u.dll_CDynLinkLibrary::CDynLinkLibrary]
xor rcx, rsp
call fcn.1403addc0
add rsp, 0x198
ret