Function at 0x140025654
Capabilities:
Link many functions at runtime

Disassembly:
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
push rbx
push rsi
push rdi
push r12
push r14
sub rsp, 0x60
mov rsi, rcx
mov rcx, qword [0x14029aa60]
call fcn.140036de0
mov r14, rax
call fcn.14002b958
call fcn.140027ae4
cmp dword [0x140299610], 0
jne 0x14002587d
mov ebx, 0x140
lea rcx, [0x140299630]
xor edx, edx
mov r8d, ebx
call fcn.140021490
lea rax, [0x14002520c]
lea rcx, str.MSFTEDIT.DLL
mov qword [0x140299638], rax
lea rax, [0x14002509c]
mov dword [0x140299630], 0x16
mov qword [0x140299668], rax
lea rax, [0x1400255e8]
mov dword [0x140299634], ebx
mov qword [0x140299658], rax
lea rax, [0x140025da8]
mov qword [0x140299660], rax
lea rax, [fcn.140025264]
mov qword [0x140299690], rax
lea rax, [fcn.140025240]
mov qword [0x140299680], rax
lea rax, [0x140025aa0]
mov qword [0x140299678], rax
lea rax, [0x140025534]
mov qword [0x1402996a8], rax
lea rax, [0x140025cd8]
mov qword [0x1402996b0], rax
lea rax, [0x1400254bc]
mov qword [0x1402996f8], rax
lea rax, [fcn.140025b80]
mov qword [0x140299700], rax
lea rax, [0x140025510]
mov qword [0x140299720], rax
lea rax, [fcn.140025bfc]
mov qword [0x140299718], rax
lea rax, [0x14002552c]
mov qword [0x140299758], rax
lea rax, [0x140025ca8]
mov qword [0x140299760], rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
lea rcx, str.RICHED20.DLL
mov qword [0x140299618], rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x140299620], rax
test rax, rax
jne 0x1400257c8
lea rcx, str.RICHED32.DLL
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, qword [0x140299b98]
test rcx, rcx
je 0x140025873
lea rdx, str.OpenThemeData
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140299b98]
lea rdx, str.CloseThemeData
mov qword [0x140299770], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140299b98]
lea rdx, str.GetThemeBackgroundContentRect
mov qword [0x140299778], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140299b98]
lea rdx, str.IsThemeBackgroundPartiallyTransparent
mov qword [0x140299780], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140299b98]
lea rdx, str.DrawThemeParentBackground
mov qword [0x140299788], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140299b98]
lea rdx, str.DrawThemeBackground
mov qword [0x140299790], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140299798], rax
mov dword [0x140299610], 1
mov eax, dword [0x140299b94]
neg eax
sbb ebx, ebx
not ebx
and ebx, 0x200
cmp qword [0x140299618], 0
je 0x1400258a2
lea rdi, str.RICHEDIT50W
jmp 0x1400258bc
cmp qword [0x140299620], 0
lea rdi, str.RichEdit20W
lea rax, str.RichEdit
cmove rdi, rax
lea r9, [rsp + 0xb0]
lea r8, [rsp + 0xa8]
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x98]
call fcn.14002cc40
and qword [rsp + 0x58], 0
mov rax, qword [0x140298d50]
mov r9d, dword [rsp + 0xb8]
mov qword [rsp + 0x50], rax
mov rax, qword [r14]
or r12, 0xffffffffffffffff
or r9d, 0x503111c4
xor r8d, r8d
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0xb0]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0xa8]
mov rdx, rdi
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0xa0]
mov ecx, ebx
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov rbx, rax
test rax, rax
je 0x140025a8c
mov rcx, qword [0x14029a7e0]
mov rdx, rsi
call fcn.140037044
lea edx, [r12 + 9]
lea r8d, [r12 + 0x11]
mov qword [rax + 0x30], r12
mov qword [rax + 0x28], r12
mov rcx, qword [r14 + 0x10]
mov qword [rax + 0x38], rcx
mov rcx, qword [0x140298d48]
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
lea rdx, str.PB_ClientRect
mov rcx, rbx
mov r8, rax
call qword [sym.imp.USER32.dll_SetPropW]
xor r9d, r9d
mov r8, r12
mov edx, 0xc5
mov rcx, rbx
call qword [sym.imp.USER32.dll_SendMessageW]
lea r8, [0x1400252a4]
lea edx, [r12 - 3]
mov rcx, rbx
call qword [sym.imp.USER32.dll_SetWindowLongPtrW]
mov dword [rsp + 0x30], 0x37
and dword [rsp + 0x28], 0
and dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rbx
mov qword [0x140299628], rax
call qword [sym.imp.USER32.dll_SetWindowPos]
mov r9d, 0x541
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.USER32.dll_RedrawWindow]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x43b
mov rcx, rbx
call qword [sym.imp.USER32.dll_SendMessageW]
xor r8d, r8d
mov edx, 0x445
or rax, 1
mov rcx, rbx
mov r9, rax
call qword [sym.imp.USER32.dll_SendMessageW]
cmp qword [0x140299618], 0
je 0x140025a58
lea r8d, [r12 + 5]
mov edx, 0x513
mov rcx, rbx
mov r9d, r8d
call qword [sym.imp.USER32.dll_SendMessageW]
lea r9, [0x140299630]
mov r8, rbx
mov rdx, rdi
mov rcx, rsi
call fcn.140027d60
mov edx, 0x10000000
mov rbx, rax
test dword [rsp + 0xb8], edx
je 0x140025a8c
mov r8d, 1
mov rcx, rdi
call fcn.140025b80
call fcn.14002b970
mov rax, rbx
add rsp, 0x60
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret