Function at 0x14014c620
Capabilities:
Link many functions at runtime

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
mov rbp, rsp
sub rsp, 0x70
mov eax, r8d
mov byte [rcx + 0x118], 1
mov r8d, 0x60
mov dword [rcx + 0x11c], eax
mov r12, rdx
mov qword [rsp + 0xb8], r15
mov rbx, rcx
mov edx, eax
lea ecx, [r8 - 0x47]
call qword [sym.imp.KERNEL32.dll_MulDiv]
xor r13d, r13d
mov dword [rbx + 0xcc], eax
cmp byte [rbx + 0x118], r13b
jne 0x14014c75f
cmp qword [rbx + 0x120], r13
je 0x14014c71b
lea rcx, [0x1402ae200]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014c71b
lea rdx, str.GetDpiForWindow
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x120]
test rax, rax
je 0x14014c6c4
call rax
mov dword [rbx + 0x11c], eax
jmp 0x14014c758
mov edx, 2
call qword [sym.imp.USER32.dll_MonitorFromWindow]
lea rcx, str.Shcore.dll
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014c71b
lea rdx, str.GetDpiForMonitor
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14014c71b
lea r9, [rbp + 0x40]
mov dword [rbp + 0x50], r13d
lea r8, [rbp + 0x50]
mov dword [rbp + 0x40], r13d
xor edx, edx
mov rcx, rdi
call rax
mov eax, dword [rbp + 0x50]
mov dword [rbx + 0x11c], eax
jmp 0x14014c758
cmp byte [rbx + 0x118], r13b
jne 0x14014c75f
mov rcx, qword [rbx + 0x120]
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
test rax, rax
je 0x14014c75f
mov edx, 0x58
mov rcx, rax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov rdx, rdi
xor ecx, ecx
mov dword [rbx + 0x11c], eax
call qword [sym.imp.USER32.dll_ReleaseDC]
mov byte [rbx + 0x118], 1
mov edx, dword [rbx + 0x11c]
mov r8d, 0x60
lea ecx, [r8 - 0x5e]
call qword [sym.imp.KERNEL32.dll_MulDiv]
lea rcx, [rbx + 0x58]
mov dword [rbx + 0xd8], eax
call sub.mfc140u.dll_DDX_FieldText
lea rcx, [rbx + 0x68]
call sub.mfc140u.dll_DDX_FieldText
mov r14d, dword [rbx + 0xd0]
cmp byte [rbx + 0x118], r13b
jne 0x14014c888
cmp qword [rbx + 0x120], r13
je 0x14014c844
lea rcx, [0x1402ae200]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014c844
lea rdx, str.GetDpiForWindow
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x120]
test rax, rax
je 0x14014c7ed
call rax
mov dword [rbx + 0x11c], eax
jmp 0x14014c881
mov edx, 2
call qword [sym.imp.USER32.dll_MonitorFromWindow]
lea rcx, str.Shcore.dll
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014c844
lea rdx, str.GetDpiForMonitor
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14014c844
lea r9, [rbp + 0x40]
mov dword [rbp + 0x50], r13d
lea r8, [rbp + 0x50]
mov dword [rbp + 0x40], r13d
xor edx, edx
mov rcx, rdi
call rax
mov eax, dword [rbp + 0x50]
mov dword [rbx + 0x11c], eax
jmp 0x14014c881
cmp byte [rbx + 0x118], r13b
jne 0x14014c888
mov rcx, qword [rbx + 0x120]
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
test rax, rax
je 0x14014c888
mov edx, 0x58
mov rcx, rax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov rdx, rdi
xor ecx, ecx
mov dword [rbx + 0x11c], eax
call qword [sym.imp.USER32.dll_ReleaseDC]
mov byte [rbx + 0x118], 1
mov edx, dword [rbx + 0x11c]
mov r8d, 0x60
mov ecx, r14d
call qword [sym.imp.KERNEL32.dll_MulDiv]
lea r14, [0x1402d36f0]
xor r9d, r9d
mov qword [rsp + 0x68], r14
neg eax
mov dword [rsp + 0x60], 0x20
xor edx, edx
mov dword [rsp + 0x58], r13d
mov r8d, 0xfffffc7c
mov dword [rsp + 0x50], r13d
mov ecx, eax
mov dword [rsp + 0x48], r13d
mov dword [rsp + 0x40], 1
mov dword [rsp + 0x38], r13d
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], 0x190
call qword [sym.imp.GDI32.dll_CreateFontW]
mov rdx, rax
lea rcx, [rbx + 0x58]
call sub.mfc140u.dll_CRecordset::AppendFilterAndSortSQL
mov esi, dword [rbx + 0xd0]
cmp byte [rbx + 0x118], r13b
jne 0x14014c9fa
cmp qword [rbx + 0x120], r13
je 0x14014c9b6
lea rcx, [0x1402ae200]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014c9b6
lea rdx, str.GetDpiForWindow
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x120]
test rax, rax
je 0x14014c95f
call rax
mov dword [rbx + 0x11c], eax
jmp 0x14014c9f3
mov edx, 2
call qword [sym.imp.USER32.dll_MonitorFromWindow]
lea rcx, str.Shcore.dll
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014c9b6
lea rdx, str.GetDpiForMonitor
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14014c9b6
lea r9, [rbp + 0x40]
mov dword [rbp + 0x50], r13d
lea r8, [rbp + 0x50]
mov dword [rbp + 0x40], r13d
xor edx, edx
mov rcx, rdi
call rax
mov eax, dword [rbp + 0x50]
mov dword [rbx + 0x11c], eax
jmp 0x14014c9f3
cmp byte [rbx + 0x118], r13b
jne 0x14014c9fa
mov rcx, qword [rbx + 0x120]
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
test rax, rax
je 0x14014c9fa
mov edx, 0x58
mov rcx, rax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov rdx, rdi
xor ecx, ecx
mov dword [rbx + 0x11c], eax
call qword [sym.imp.USER32.dll_ReleaseDC]
mov byte [rbx + 0x118], 1
mov edx, dword [rbx + 0x11c]
mov r8d, 0x60
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_MulDiv]
mov qword [rsp + 0x68], r14
xor r9d, r9d
mov dword [rsp + 0x60], 0x20
neg eax
mov dword [rsp + 0x58], r13d
xor r8d, r8d
mov dword [rsp + 0x50], r13d
xor edx, edx
mov dword [rsp + 0x48], r13d
mov ecx, eax
mov dword [rsp + 0x40], 1
mov dword [rsp + 0x38], r13d
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], CFileFind::CFileFind
call qword [sym.imp.GDI32.dll_CreateFontW]
mov rdx, rax
lea rcx, [rbx + 0x68]
call sub.mfc140u.dll_CRecordset::AppendFilterAndSortSQL
lea rcx, [rbx + 0x98]
call fcn.1401265e0
mov r15, qword [rsp + 0xb8]
cmp byte [rbx + 0x118], r13b
jne 0x14014cb6f
cmp qword [rbx + 0x120], r13
je 0x14014cb2b
lea rcx, [0x1402ae200]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014cb2b
lea rdx, str.GetDpiForWindow
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x120]
test rax, rax
je 0x14014cad4
call rax
mov dword [rbx + 0x11c], eax
jmp 0x14014cb68
mov edx, 2
call qword [sym.imp.USER32.dll_MonitorFromWindow]
lea rcx, str.Shcore.dll
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014cb2b
lea rdx, str.GetDpiForMonitor
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14014cb2b
lea r9, [rbp + 0x40]
mov dword [rbp + 0x50], r13d
lea r8, [rbp + 0x50]
mov dword [rbp + 0x40], r13d
xor edx, edx
mov rcx, rdi
call rax
mov eax, dword [rbp + 0x50]
mov dword [rbx + 0x11c], eax
jmp 0x14014cb68
cmp byte [rbx + 0x118], r13b
jne 0x14014cb6f
mov rcx, qword [rbx + 0x120]
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
test rax, rax
je 0x14014cb6f
mov edx, 0x58
mov rcx, rax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov rdx, rdi
xor ecx, ecx
mov dword [rbx + 0x11c], eax
call qword [sym.imp.USER32.dll_ReleaseDC]
mov byte [rbx + 0x118], 1
mov edx, dword [rbx + 0x11c]
lea r14, [0x1402c1710]
mov dword [rsp + 0x68], 0x159
lea rcx, [rbx + 0x98]
mov dword [rsp + 0x60], 0x158
mov r9d, operator
mov dword [rsp + 0x58], 0x157
mov dword [rsp + 0x50], 0x156
mov dword [rsp + 0x48], 0x155
mov dword [rsp + 0x40], 0x154
lea r8d, [r9 - 1]
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], operator
mov dword [rsp + 0x28], ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
mov dword [rsp + 0x20], operator
call fcn.1401264d0
lea rcx, [rbx + 0xa0]
call fcn.1401265e0
cmp byte [rbx + 0x118], r13b
jne 0x14014ccdf
cmp qword [rbx + 0x120], r13
je 0x14014cc9b
lea rcx, [0x1402ae200]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014cc9b
lea rdx, str.GetDpiForWindow
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x120]
test rax, rax
je 0x14014cc44
call rax
mov dword [rbx + 0x11c], eax
jmp 0x14014ccd8
mov edx, 2
call qword [sym.imp.USER32.dll_MonitorFromWindow]
lea rcx, str.Shcore.dll
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014cc9b
lea rdx, str.GetDpiForMonitor
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14014cc9b
lea r9, [rbp + 0x40]
mov dword [rbp + 0x50], r13d
lea r8, [rbp + 0x50]
mov dword [rbp + 0x40], r13d
xor edx, edx
mov rcx, rdi
call rax
mov eax, dword [rbp + 0x50]
mov dword [rbx + 0x11c], eax
jmp 0x14014ccd8
cmp byte [rbx + 0x118], r13b
jne 0x14014ccdf
mov rcx, qword [rbx + 0x120]
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
test rax, rax
je 0x14014ccdf
mov edx, 0x58
mov rcx, rax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov rdx, rdi
xor ecx, ecx
mov dword [rbx + 0x11c], eax
call qword [sym.imp.USER32.dll_ReleaseDC]
mov byte [rbx + 0x118], 1
mov edx, dword [rbx + 0x11c]
lea rcx, [rbx + 0xa0]
mov dword [rsp + 0x68], 0x171
mov r9d, SerializeElements<ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
mov dword [rsp + 0x60], 0x170
mov dword [rsp + 0x58], 0x16f
mov dword [rsp + 0x50], 0x16e
mov dword [rsp + 0x48], reloc.mfc140u.dll_CColorDialog::CColorDialog
lea r8d, [r9 - 1]
mov dword [rsp + 0x40], reloc.mfc140u.dll_CCmdUI::CCmdUI
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], operator
mov dword [rsp + 0x28], ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
mov dword [rsp + 0x20], reloc.mfc140u.dll_SerializeElements_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t_
call fcn.1401264d0
lea rcx, [rbx + 0xa8]
call fcn.1401265e0
cmp byte [rbx + 0x118], r13b
jne 0x14014ce48
cmp qword [rbx + 0x120], r13
je 0x14014ce04
lea rcx, [0x1402ae200]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014ce04
lea rdx, str.GetDpiForWindow
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x120]
test rax, rax
je 0x14014cdad
call rax
mov dword [rbx + 0x11c], eax
jmp 0x14014ce41
mov edx, 2
call qword [sym.imp.USER32.dll_MonitorFromWindow]
lea rcx, str.Shcore.dll
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014ce04
lea rdx, str.GetDpiForMonitor
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14014ce04
lea r9, [rbp + 0x40]
mov dword [rbp + 0x50], r13d
lea r8, [rbp + 0x50]
mov dword [rbp + 0x40], r13d
xor edx, edx
mov rcx, rdi
call rax
mov eax, dword [rbp + 0x50]
mov dword [rbx + 0x11c], eax
jmp 0x14014ce41
cmp byte [rbx + 0x118], r13b
jne 0x14014ce48
mov rcx, qword [rbx + 0x120]
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
test rax, rax
je 0x14014ce48
mov edx, 0x58
mov rcx, rax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov rdx, rdi
xor ecx, ecx
mov dword [rbx + 0x11c], eax
call qword [sym.imp.USER32.dll_ReleaseDC]
mov byte [rbx + 0x118], 1
mov edx, dword [rbx + 0x11c]
lea rcx, [rbx + 0xa8]
mov dword [rsp + 0x68], reloc.mfc140u.dll_CCmdTarget::CCmdTarget
mov r9d, ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
mov dword [rsp + 0x60], CCmdUI::CCmdUI
mov dword [rsp + 0x58], reloc.mfc140u.dll_CChevronOwnerDrawMenu::CChevronOwnerDrawMenu
mov dword [rsp + 0x50], CChevronOwnerDrawMenu::CChevronOwnerDrawMenu
mov dword [rsp + 0x48], CChevronOwnerDrawMenu::CChevronOwnerDrawMenu
lea r8d, [r9 - 1]
mov dword [rsp + 0x40], CChevronOwnerDrawMenu::CChevronOwnerDrawMenu
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], reloc.mfc140u.dll_Ordinal_285
mov dword [rsp + 0x28], ATL::CStringT<char,StrTraitMFC_DLL<char,ATL::ChTraitsCRT<char>
mov dword [rsp + 0x20], ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
call fcn.1401264d0
lea rcx, [rbx + 0xb0]
call fcn.1401265e0
cmp byte [rbx + 0x118], r13b
jne 0x14014cfb1
cmp qword [rbx + 0x120], r13
je 0x14014cf6d
lea rcx, [0x1402ae200]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014cf6d
lea rdx, str.GetDpiForWindow
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x120]
test rax, rax
je 0x14014cf16
call rax
mov dword [rbx + 0x11c], eax
jmp 0x14014cfaa
mov edx, 2
call qword [sym.imp.USER32.dll_MonitorFromWindow]
lea rcx, str.Shcore.dll
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014cf6d
lea rdx, str.GetDpiForMonitor
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14014cf6d
lea r9, [rbp + 0x40]
mov dword [rbp + 0x50], r13d
lea r8, [rbp + 0x50]
mov dword [rbp + 0x40], r13d
xor edx, edx
mov rcx, rdi
call rax
mov eax, dword [rbp + 0x50]
mov dword [rbx + 0x11c], eax
jmp 0x14014cfaa
cmp byte [rbx + 0x118], r13b
jne 0x14014cfb1
mov rcx, qword [rbx + 0x120]
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
test rax, rax
je 0x14014cfb1
mov edx, 0x58
mov rcx, rax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov rdx, rdi
xor ecx, ecx
mov dword [rbx + 0x11c], eax
call qword [sym.imp.USER32.dll_ReleaseDC]
mov byte [rbx + 0x118], 1
mov edx, dword [rbx + 0x11c]
lea rcx, [rbx + 0xb0]
mov dword [rsp + 0x68], 0x177
mov r9d, ATL::CStringT<char,StrTraitMFC_DLL<char,ATL::ChTraitsCRT<char>
mov dword [rsp + 0x60], 0x176
mov dword [rsp + 0x58], 0x175
mov dword [rsp + 0x50], 0x174
mov dword [rsp + 0x48], 0x173
lea r8d, [r9 - 0x56]
mov dword [rsp + 0x40], 0x172
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
mov dword [rsp + 0x28], ATL::CStringT<char,StrTraitMFC_DLL<char,ATL::ChTraitsCRT<char>
mov dword [rsp + 0x20], ATL::CStringT<char,StrTraitMFC_DLL<char,ATL::ChTraitsCRT<char>
call fcn.1401264d0
lea rcx, [rbx + 0xb8]
call fcn.1401265e0
cmp byte [rbx + 0x118], r13b
jne 0x14014d11a
cmp qword [rbx + 0x120], r13
je 0x14014d0d6
lea rcx, [0x1402ae200]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014d0d6
lea rdx, str.GetDpiForWindow
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x120]
test rax, rax
je 0x14014d07f
call rax
mov dword [rbx + 0x11c], eax
jmp 0x14014d113
mov edx, 2
call qword [sym.imp.USER32.dll_MonitorFromWindow]
lea rcx, str.Shcore.dll
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
test rax, rax
je 0x14014d0d6
lea rdx, str.GetDpiForMonitor
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14014d0d6
lea r9, [rbp + 0x40]
mov dword [rbp + 0x50], r13d
lea r8, [rbp + 0x50]
mov dword [rbp + 0x40], r13d
xor edx, edx
mov rcx, rdi
call rax
mov eax, dword [rbp + 0x50]
mov dword [rbx + 0x11c], eax
jmp 0x14014d113
cmp byte [rbx + 0x118], r13b
jne 0x14014d11a
mov rcx, qword [rbx + 0x120]
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
test rax, rax
je 0x14014d11a
mov edx, 0x58
mov rcx, rax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov rdx, rdi
xor ecx, ecx
mov dword [rbx + 0x11c], eax
call qword [sym.imp.USER32.dll_ReleaseDC]
mov byte [rbx + 0x118], 1
mov edx, dword [rbx + 0x11c]
lea rcx, [rbx + 0xb8]
mov dword [rsp + 0x68], 0x17e
mov r9d, ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
mov dword [rsp + 0x60], 0x17d
mov dword [rsp + 0x58], 0x17c
mov dword [rsp + 0x50], 0x17b
mov dword [rsp + 0x48], 0x17a
lea r8d, [r9 - 3]
mov dword [rsp + 0x40], 0x179
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
mov dword [rsp + 0x28], ATL::CStringT<char,StrTraitMFC_DLL<char,ATL::ChTraitsCRT<char>
mov dword [rsp + 0x20], ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
call fcn.1401264d0
mov rdx, r12
mov rcx, rbx
add rsp, 0x70
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
jmp fcn.14014d3e0