Function at 0x1400595c0
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x290
mov rax, qword [0x1402ba040]
xor rax, rsp
mov qword [rsp + 0x280], rax
mov rdi, r8
mov r12d, edx
mov r15, rcx
call sym.SystemInformer.exe_QiGetWindowDpi
mov rsi, qword [0x1402c5148]
xor ebx, ebx
mov ebp, eax
xor r9d, r9d
movabs rax, 0xe38e38e38e38e38f
xor r8d, r8d
lea rcx, [rbp*8 + 0x24]
mul rcx
lea rax, str.Microsoft_Sans_Serif
mov qword [rsp + 0x68], rax
mov r14, rdx
mov dword [rsp + 0x60], ebx
xor edx, edx
mov dword [rsp + 0x58], ebx
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x48], ebx
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x30], ebx
shr r14, 6
neg r14d
mov dword [rsp + 0x28], ebx
mov ecx, r14d
mov dword [rsp + 0x20], 0x190
call qword [sym.imp.GDI32.dll_CreateFontW]
mov qword [0x1402c5148], rax
test rax, rax
jne 0x140059754
lea rax, str.Tahoma
xor r9d, r9d
mov qword [rsp + 0x68], rax
xor r8d, r8d
mov dword [rsp + 0x60], ebx
xor edx, edx
mov dword [rsp + 0x58], ebx
mov ecx, r14d
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x48], ebx
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], 0x190
call qword [sym.imp.GDI32.dll_CreateFontW]
mov qword [0x1402c5148], rax
test rax, rax
jne 0x140059754
xor edx, edx
mov dword [rsp + 0x80], 0x1f8
mov r8d, 0x1f4
lea rcx, [rsp + 0x84]
call fcn.140207110
mov rax, qword [0x1402c8220]
test rax, rax
je 0x14005971c
test ebp, ebp
je 0x14005971c
xor r9d, r9d
mov dword [rsp + 0x20], ebp
lea r8, [rsp + 0x80]
mov edx, 0x1f8
lea ecx, [rbx + 0x29]
call qword [case.0x14013b5a0.0]
jmp 0x140059736
xor r9d, r9d
lea r8, [rsp + 0x80]
mov edx, 0x1f8
lea ecx, [r9 + 0x29]
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
test eax, eax
je 0x14005974a
lea rcx, [rsp + 0x218]
call qword [sym.imp.GDI32.dll_CreateFontIndirectW]
jmp 0x14005974d
mov rax, rbx
mov qword [0x1402c5148], rax
test rsi, rsi
je 0x140059766
mov rcx, rsi
call qword [sym.imp.GDI32.dll_DeleteObject]
lea rax, str.EnableMonospaceFont
mov qword [rsp + 0x70], 0x26
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x78], rax
call sym.SystemInformer.exe_QiGetIntegerStringRefSetting
test eax, eax
je 0x140059791
mov rcx, r15
call fcn.14014ca40
test r12d, r12d
jne 0x1400598fe
nop word [rax + rax]
test rdi, rdi
je 0x1400598fe
movzx eax, byte [rdi]
xor al, 5
test al, 0x1f
jne 0x1400598fe
lea rdx, [0x14026f840]
mov rcx, rdi
call fcn.1401e72ac
test eax, eax
jne 0x1400598fe
test byte [0x1402c0b00], 1
jne 0x1400598d4
lock bts qword [0x1402c0b00], 0x1f
jae 0x14005980a
test byte [0x1402c0b00], 1
jne 0x1400598d4
xor edx, edx
lea rcx, [0x1402c0b00]
call sym.SystemInformer.exe_QifWaitForEvent
jmp 0x1400598d4
xor edx, edx
lea rcx, str.shell32.dll
mov r8d, 0x800
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x14005986e
xor edx, edx
lea rcx, str.shell32.dll
mov r8d, 0x200
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x14005986e
cmp dword [0x1402baf40], 0x3e
jae 0x1400598c8
xor r8d, r8d
lea rcx, str.shell32.dll
xor edx, edx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
je 0x1400598c8
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x1400598c1
mov edx, dword ds:[rcx + 0x3c]
lea eax, [rdx - 1]
cmp eax, 0x7ffffffd
ja 0x1400598c1
cmp dword [rdx + rcx], 0x4550
jne 0x1400598c1
add rdx, 0x88
add rdx, rcx
mov eax, dword [rdx]
test eax, eax
je 0x1400598c1
cmp dword [rdx + 4], ebx
je 0x1400598c1
lea r8, [rcx + rax]
mov word [rsp + 0x20], bx
lea r9, str.RegenerateUserEnvironment
call fcn.140177a80
mov rbx, rax
mov qword [0x1402c81a0], rbx
lea rcx, [0x1402c0b00]
call sym.SystemInformer.exe_QifSetEvent
mov rax, qword [0x1402c81a0]
nop dword [rax + rax]
test rax, rax
je 0x1400598fe
mov edx, 1
lea rcx, [rsp + 0x70]
call qword [case.0x14013b5a0.0]
test eax, eax
je 0x1400598fe
call fcn.1401708e0
mov rcx, qword [rsp + 0x280]
xor rcx, rsp
call fcn.1401e0100
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret