Function at 0x14027c10a
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
movaps xmmword [rsp + 0x40], xmm6
mov r12, r8
mov rsi, rdx
mov r15, rcx
mov r14d, dword [rsp + 0xc0]
mov rax, qword [0x140346038]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x34], 0xaaaaaaaa
cmp r14d, 0x29
jl 0x14027c168
cmp r14d, 0x64
ja 0x14027c2bb
mov eax, 0x80000
and eax, dword [rsi + 0x224]
je 0x14027c2bb
mov rbx, qword [rsp + 0xd8]
mov rax, qword [rsp + 0xd0]
mov r8, qword [rsp + 0xc8]
test rbx, rbx
je 0x14027c18c
mov qword [rbx], 0
mov rcx, r8
or rcx, rax
sete cl
mov ebp, 1
test r15, r15
je 0x14027c1a3
test cl, cl
je 0x14027c1c8
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.140156fe0
mov eax, ebp
movaps xmm6, xmmword [rsp + 0x40]
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x20], rsi
mov rcx, r12
mov rdx, r9
mov r9, rax
call fcn.14027dfce
mov ebp, 0x1b
test rax, rax
je 0x14027c1a3
mov rdi, rax
movzx eax, word [rsi + 0x2d4]
mov word [rdi + 0x2d4], ax
movzx eax, word [rsi + 0x2d6]
mov word [rdi + 0x2d6], ax
mov rcx, rdi
call fcn.14010ef7a
lea rcx, [0x14031e6af]
call fcn.14011fba7
test rax, rax
je 0x14027c2d9
mov rbp, rax
mov r13, rax
mov dword [rbp + 0xac], 0x40
mov rax, qword [r15 + 0x50]
mov qword [rbp + 0x50], rax
mov rax, qword [r15 + 0x58]
mov qword [rbp + 0x58], rax
mov rcx, qword [r15 + 0x98]
test rcx, rcx
je 0x14027c259
mov qword [r13 + 0x98], rcx
call fcn.14011fb70
mov rcx, qword [r15 + 0x88]
test rcx, rcx
je 0x14027c271
call fcn.14011fc90
mov qword [r13 + 0x88], rax
add rbp, 0x50
lea r8, str.pseudoroot
mov qword [rsp + 0x28], r13
mov rcx, r13
xor edx, edx
xor r9d, r9d
call fcn.140263976
test rax, rax
jne 0x14027c2e3
test r12, r12
je 0x14027c2a0
mov rcx, rdi
call fcn.14010bc69
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
mov rcx, qword [rsp + 0x28]
call fcn.140118100
mov ebp, 1
jmp 0x14027c1a3
lea r8, str.Maximum_entity_nesting_depth_exceeded
mov ebp, 0x59
mov rcx, rsi
mov edx, 0x59
call fcn.140277857
jmp 0x14027c1a3
mov rcx, rdi
call fcn.14010bc69
jmp 0x14027c2b1
mov r13, rax
mov r12, qword [rsp + 0x28]
mov rcx, r12
mov rdx, rax
call fcn.1400993f5
mov rdx, qword [r12 + 0x18]
mov rcx, rdi
call fcn.140099207
mov qword [rdi + 0x10], r15
mov qword [r13 + 0x40], r15
cmp dword [rdi + 0x1b4], 0
jne 0x14027c331
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x28]
sub rcx, qword [rax + 0x20]
cmp rcx, 0xf9
jg 0x14027c331
mov rcx, rdi
call fcn.140111048
mov rcx, qword [rdi + 0x38]
mov rax, qword [rcx + 0x20]
mov rcx, qword [rcx + 0x28]
sub rcx, rax
cmp rcx, 4
jl 0x14027c379
mov dl, byte [rax]
lea rcx, [rsp + 0x34]
mov byte [rcx], dl
mov dl, byte [rax + 1]
mov byte [rcx + 1], dl
mov dl, byte [rax + 2]
mov byte [rcx + 2], dl
mov al, byte [rax + 3]
mov byte [rcx + 3], al
mov edx, 4
call fcn.14007d523
test eax, eax
je 0x14027c379
mov rcx, rdi
mov edx, eax
call fcn.140116afb
mov rax, qword [rdi + 0x38]
mov rax, qword [rax + 0x20]
cmp byte [rax], 0x3c
mov r13, qword [rsp + 0x28]
jne 0x14027c405
cmp byte [rax + 1], 0x3f
jne 0x14027c405
cmp byte [rax + 2], 0x78
jne 0x14027c405
cmp byte [rax + 3], 0x6d
jne 0x14027c405
cmp byte [rax + 4], 0x6c
jne 0x14027c405
movzx eax, byte [rax + 5]
cmp rax, 0x20
ja 0x14027c405
movabs rcx, 0x100002600
bt rcx, rax
jae 0x14027c405
mov rcx, rdi
call fcn.14027b39c
mov rcx, qword [rsi + 0x20]
lea rdx, [0x14031e6af]
call fcn.140113201
test eax, eax
je 0x14027c405
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x50]
lea rdx, [0x14031e6af]
call fcn.140113201
test eax, eax
jne 0x14027c405
lea r8, str.Version_mismatch_between_document_and_entity_n
mov rcx, rdi
mov edx, 0x6d
call fcn.140277857
mov dword [rdi + 0x108], 7
mov dword [rdi + 0x178], r14d
mov rax, qword [rsi + 0x198]
mov qword [rdi + 0x198], rax
mov eax, dword [rsi + 0x1a0]
mov dword [rdi + 0x1a0], eax
mov eax, dword [rsi + 0x94]
mov dword [rdi + 0x94], eax
mov eax, dword [rsi + 0x90]
mov dword [rdi + 0x90], eax
mov eax, dword [rsi + 0x1c]
mov dword [rdi + 0x1c], eax
cmp dword [rsi + 0x94], 0
je 0x14027c48d
mov rax, qword [rsi + 0xa0]
mov qword [rdi + 0xa0], rax
mov rax, qword [rsi + 0xa8]
mov qword [rdi + 0xa8], rax
mov rax, qword [rsi + 0x98]
mov qword [rdi + 0x98], rax
mov eax, dword [rsi + 0xc8]
mov dword [rdi + 0xc8], eax
mov eax, dword [rsi + 0x8c]
mov dword [rdi + 0x8c], eax
mov rcx, qword [rdi + 0x1b8]
test rcx, rcx
je 0x14027c4aa
call fcn.14010bf45
mov rcx, qword [rsi + 0x1b8]
mov qword [rdi + 0x1b8], rcx
lea rdx, [0x14031e841]
mov r8d, 3
call fcn.1400e9335
mov qword [rdi + 0x1d0], rax
mov rcx, qword [rdi + 0x1b8]
lea rdx, str.xmlns
mov r8d, 5
call fcn.1400e9335
mov qword [rdi + 0x1d8], rax
mov rcx, qword [rdi + 0x1b8]
lea rdx, str.http:__www.w3.org_XML_1998_namespace
mov r8d, 0x24
call fcn.1400e9335
mov qword [rdi + 0x1e0], rax
mov eax, dword [rsi + 0x228]
mov dword [rdi + 0x228], eax
mov rax, qword [rsi + 0x210]
mov qword [rdi + 0x210], rax
mov rax, qword [rsi + 0x218]
mov qword [rdi + 0x218], rax
mov eax, dword [rsi + 0x1a4]
mov dword [rdi + 0x1a4], eax
mov eax, dword [rsi + 0x68]
mov dword [rdi + 0x68], eax
mov eax, dword [rsi + 0x70]
mov dword [rdi + 0x70], eax
mov eax, dword [rsi + 0x74]
mov dword [rdi + 0x74], eax
mov rax, qword [rsi + 0x78]
mov qword [rdi + 0x78], rax
mov rcx, rdi
call fcn.14027d53f
mov rax, qword [rdi + 0x38]
mov rax, qword [rax + 0x20]
movzx ecx, byte [rax]
test ecx, ecx
je 0x14027c596
cmp ecx, 0x3c
jne 0x14027c586
mov edx, 0x55
cmp byte [rax + 1], 0x2f
je 0x14027c58b
mov edx, 0x56
mov rcx, rdi
xor r8d, r8d
call fcn.1401155db
mov rax, qword [rdi + 0x50]
cmp rax, qword [r13 + 0x18]
je 0x14027c5b0
mov rcx, rdi
mov edx, 0x55
xor r8d, r8d
call fcn.1401155db
mov r12, rbp
lea r15, [rdi + 0x210]
lea r14, [rdi + 0x70]
cmp dword [rdi + 0x18], 0
je 0x14027c5d6
test rbx, rbx
je 0x14027c625
mov rax, qword [r13 + 0x18]
mov rax, qword [rax + 0x18]
mov qword [rbx], rax
jmp 0x14027c60f
mov ebp, dword [rdi + 0x80]
mov dword [rsi + 0x80], ebp
mov dword [rsi + 0x18], 0
mov eax, 0x248
lea rdx, [rsi + rax]
mov rcx, rdi
add rcx, rax
call fcn.1401169d7
mov rax, qword [rdi + 0x38]
jmp 0x14027c62b
mov qword [rax + 0x28], 0
mov rax, qword [rax + 0x30]
test rax, rax
jne 0x14027c603
mov r13, qword [rsp + 0x28]
mov rax, qword [r13 + 0x18]
mov qword [rax + 0x18], 0
mov rax, qword [rdi + 0x38]
xor ebp, ebp
test rax, rax
je 0x14027c67f
mov ecx, dword [rax + 0x20]
sub ecx, dword [rax + 0x18]
add ecx, dword [rax + 0x3c]
mov eax, 0xffffffff
cmovb ecx, eax
mov edx, dword [rsi + 0x2a8]
add edx, ecx
cmovb edx, eax
mov dword [rsi + 0x2a8], edx
add edx, dword [rdi + 0x2a8]
cmovb edx, eax
mov dword [rsi + 0x2a8], edx
add ecx, dword [rsi + 0x2cc]
cmovb ecx, eax
mov dword [rsi + 0x2cc], ecx
add ecx, dword [rdi + 0x2cc]
cmovb ecx, eax
mov dword [rsi + 0x2cc], ecx
mov qword [rdi + 0x1b8], 0
xorps xmm6, xmm6
movups xmmword [r15], xmm6
movzx eax, word [rdi + 0x2d4]
mov word [rsi + 0x2d4], ax
movzx eax, word [rdi + 0x2d6]
mov word [rsi + 0x2d6], ax
mov eax, dword [rdi + 0x94]
mov dword [rsi + 0x94], eax
mov eax, dword [rdi + 0x90]
mov dword [rsi + 0x90], eax
mov eax, dword [rdi + 0x70]
mov dword [rsi + 0x70], eax
mov eax, dword [rdi + 0x74]
mov dword [rsi + 0x74], eax
mov rax, qword [rdi + 0x78]
mov qword [rsi + 0x78], rax
movups xmmword [r14], xmm6
mov rcx, rdi
call fcn.14010bc69
movups xmmword [r12], xmm6
mov rcx, r13
call fcn.140118100
jmp 0x14027c1a3