Function at 0x1401a4800
Capabilities:
Parse pe header

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x50
cmp dword [0x1402b5e88], 0x72
mov rbp, rdx
lea rdx, [rax - 0x18]
mov rsi, r8
mov r14, rcx
jae 0x1401a495c
lea rbx, str.twinui.dll
mov qword [rax - 0x18], 0x14
mov qword [rax - 0x10], rbx
call fcn.140174480
mov rcx, rax
test rax, rax
jne 0x1401a48b0
xor edx, edx
mov r8d, 0x800
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a48b0
xor edx, edx
mov r8d, 0x200
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a48b0
cmp dword [0x1402b5e88], 0x3e
jae 0x1401a48a6
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a48b0
mov eax, 0x8007007e
jmp 0x1401a4aff
mov eax, 0x5a4d
xor edi, edi
cmp word [rcx], ax
jne 0x1401a4aab
mov edx, dword [rcx + 0x3c]
lea eax, [rdx - 1]
cmp eax, 0x7ffffffd
ja 0x1401a4aab
cmp dword [rdx + rcx], 0x4550
jne 0x1401a4aab
add rdx, 0x88
add rdx, rcx
mov eax, dword [rdx]
test eax, eax
je 0x1401a4aab
nop dword [rax + rax]
cmp dword [rdx + 4], edi
je 0x1401a4aab
lea r8, [rcx + rax]
mov word [rsp + 0x20], di
lea r9, str.DllGetClassObject
call fcn.140174840
nop
test rax, rax
je 0x1401a4aab
lea r8, ds:[rsp + 0x88]
lea rdx, [0x140208ae0]
lea rcx, [0x140286a10]
call qword [str.PB__]
mov ebx, eax
test eax, eax
js 0x1401a4ab0
lea r8, [0x140286a30]
jmp 0x1401a4a73
lea rbx, str.twinui.appcore.dll
mov qword [rsp + 0x40], 0x24
mov qword [rsp + 0x48], rbx
call fcn.140174480
mov rcx, rax
test rax, rax
jne 0x1401a49d7
xor edx, edx
mov r8d, 0x800
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a49d7
xor edx, edx
mov r8d, 0x200
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
jne 0x1401a49d7
cmp dword [0x1402b5e88], 0x3e
jae 0x1401a48a6
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rcx, rax
test rax, rax
je 0x1401a48a6
mov eax, 0x5a4d
xor edi, edi
cmp word [rcx], ax
jne 0x1401a4aab
mov edx, dword [rcx + 0x3c]
lea eax, [rdx - 1]
cmp eax, 0x7ffffffd
ja 0x1401a4aab
cmp dword [rdx + rcx], 0x4550
jne 0x1401a4aab
add rdx, 0x88
add rdx, rcx
mov eax, dword [rdx]
test eax, eax
je 0x1401a4aab
nop dword [rax + rax]
cmp dword [rdx + 4], edi
je 0x1401a4aab
lea r8, [rcx + rax]
mov word [rsp + 0x20], di
lea r9, str.DllGetClassObject
call fcn.140174840
nop
test rax, rax
je 0x1401a4aab
lea r8, ds:[rsp + 0x88]
lea rdx, [0x140208ae0]
lea rcx, [0x140286a10]
call qword [str.PB__]
mov ebx, eax
test eax, eax
js 0x1401a4ab0
lea r8, [0x140286a60]
mov rcx, qword [rsp + 0x88]
lea r9, [rsp + 0x80]
xor edx, edx
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [str.PB__]
mov rcx, qword [rsp + 0x88]
mov ebx, eax
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [str.PB__]
jmp 0x1401a4ab0
mov ebx, 0x8007007f
test ebx, ebx
jne 0x1401a4afd
mov rcx, qword ds:[rsp + 0x80]
mov r9, rsi
mov qword [rsp + 0x30], rdi
mov r8, rbp
mov dword [rsp + 0x28], edi
mov rdx, r14
mov dword [rsp + 0x20], 0x32
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [str.PB__]
mov rcx, qword [rsp + 0x80]
mov ebx, eax
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x10]
call qword [str.PB__]
mov eax, ebx
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x50
pop r14
ret