Function at 0x18004f1a0
Capabilities:
Link many functions at runtime

Disassembly:
push r12
push r13
push r14
sub rsp, 0x50
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x80], rdi
mov rbx, r9
mov r13, r8
mov edi, edx
mov r14, rcx
mov dword [r9], 0
lea rsi, [method.CRegistrySettings.virtual_32]
mov rax, rsi
mov rcx, qword [rcx + 0x5e0]
test rcx, rcx
je 0x18004f1fa
lea rdx, str.IsAppThemed
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
test eax, eax
jne 0x18004f207
xor eax, eax
jmp 0x18004f4f0
cmp edi, 0x385
je 0x18004f236
cmp edi, 0x384
je 0x18004f236
cmp edi, 0x1fa
je 0x18004f236
cmp edi, 0x326
je 0x18004f236
cmp edi, 0x325
je 0x18004f236
xor eax, eax
jmp 0x18004f4f0
mov dword [rbx], 1
mov eax, dword [r13 + 0x18]
sub eax, 1
je 0x18004f3b9
cmp eax, 0x10000
je 0x18004f257
xor eax, eax
jmp 0x18004f4f0
mov rcx, qword [r14 + 0x5e0]
test rcx, rcx
je 0x18004f273
lea rdx, str.IsAppThemed
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
call rsi
test eax, eax
je 0x18004f3b2
cmp edi, 0x385
je 0x18004f2b4
cmp edi, 0x384
je 0x18004f2b4
cmp edi, 0x321
je 0x18004f2b4
cmp edi, 0x323
je 0x18004f2b4
cmp edi, 0x325
je 0x18004f2b4
cmp edi, 0x326
je 0x18004f2b4
xor eax, eax
jmp 0x18004f4f0
mov rbx, qword [r14 + 8]
lea rax, [method.CRegistrySettings.virtual_32]
mov rcx, qword [r14 + 0x5e0]
test rcx, rcx
je 0x18004f2d8
lea rdx, str.OpenThemeData
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.TOOLBAR
mov rcx, rbx
call rax
mov rdi, rax
test rax, rax
je 0x18004f3ab
mov eax, dword [r13 + 0x40]
test al, 0x40
je 0x18004f2ff
mov ebx, 2
jmp 0x18004f347
test al, 0x20
je 0x18004f30a
mov ebx, 1
jmp 0x18004f347
test al, 4
je 0x18004f315
mov ebx, 4
jmp 0x18004f347
test al, 0x10
je 0x18004f320
mov ebx, 1
jmp 0x18004f347
test al, 2
je 0x18004f32b
mov ebx, 4
jmp 0x18004f347
bt eax, 8
jae 0x18004f338
mov ebx, 4
jmp 0x18004f347
test al, 1
mov ebx, 1
mov eax, 3
cmovne ebx, eax
mov edx, 1
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.GDI32.dll_SetBkMode]
lea rsi, [r13 + 0x28]
mov r9, rsi
mov r8, qword [r13 + 0x20]
mov rdx, qword [r14 + 8]
lea rcx, [r14 + 0x5d8]
call fcn.180078a20
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], ebx
mov r9d, 1
mov r8, qword [r13 + 0x20]
mov rdx, rdi
lea rcx, [r14 + 0x5d8]
call fcn.180078980
mov rdx, rdi
lea rcx, [r14 + 0x5d8]
call fcn.180078940
xor eax, eax
jmp 0x18004f4f0
xor eax, eax
jmp 0x18004f4f0
mov rbx, qword [r14 + 8]
lea rax, [method.CRegistrySettings.virtual_32]
mov rcx, qword [r14 + 0x5e0]
test rcx, rcx
je 0x18004f3dd
lea rdx, str.OpenThemeData
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.TOOLBAR
mov rcx, rbx
call rax
mov rsi, rax
test rax, rax
je 0x18004f4e2
mov eax, dword [r13 + 0x40]
test al, 0x40
je 0x18004f404
mov ebx, 2
jmp 0x18004f44c
test al, 0x20
je 0x18004f40f
mov ebx, 1
jmp 0x18004f44c
test al, 4
je 0x18004f41a
mov ebx, 4
jmp 0x18004f44c
test al, 0x10
je 0x18004f425
mov ebx, 1
jmp 0x18004f44c
test al, 2
je 0x18004f430
mov ebx, 4
jmp 0x18004f44c
bt eax, 8
jae 0x18004f43d
mov ebx, 4
jmp 0x18004f44c
test al, 1
mov ebx, 1
mov eax, 3
cmovne ebx, eax
cmp edi, 0x1fa
je 0x18004f464
cmp edi, 0x322
je 0x18004f464
cmp edi, 0x324
jne 0x18004f4e2
mov edx, 1
mov rcx, qword [r13 + 0x20]
call qword [sym.imp.GDI32.dll_SetBkMode]
lea rdi, [r13 + 0x28]
mov r9, rdi
mov r8, qword [r13 + 0x20]
mov rdx, qword [r14 + 8]
lea rcx, [r14 + 0x5d8]
call fcn.180078a20
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], ebx
mov r9d, 5
mov r8, qword [r13 + 0x20]
mov rdx, rsi
lea rcx, [r14 + 0x5d8]
call fcn.180078980
lea rax, [0x1800788f0]
mov rcx, qword [r14 + 0x5e0]
test rcx, rcx
je 0x18004f4d9
lea rdx, str.CloseThemeData
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rsi
call rax
xor eax, eax
jmp 0x18004f4f0
movabs rax, SafeArrayAllocDescriptorEx
jmp 0x18004f4f0
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x80]
add rsp, 0x50
pop r14
pop r13
pop r12
ret